├── swig ├── _r1b.so ├── compile_pi.sh └── compile.sh ├── gallery ├── lsys.png ├── prim2.png ├── bottles.png ├── scroll.png ├── teapots.png └── colorcard.png ├── .gitattributes ├── examples ├── out │ ├── fonts.png │ ├── prim.png │ ├── prim2.png │ ├── wiki.png │ ├── bottles.png │ ├── filters.png │ ├── plants.png │ ├── scroll.png │ ├── teapots.png │ ├── colorcard.png │ ├── manual │ │ ├── 01.png │ │ ├── 02.png │ │ ├── 03.png │ │ ├── 04.png │ │ ├── 05.png │ │ ├── 06.png │ │ ├── 07.png │ │ ├── 08.png │ │ ├── 09.png │ │ ├── 10.png │ │ ├── 11.png │ │ ├── 12.png │ │ ├── 13.png │ │ └── 14.png │ └── upsample.png ├── assets │ ├── r1b.png │ ├── david.png │ ├── peppers.png │ ├── sudoku.jpg │ ├── gradient.png │ ├── upsample_test.png │ └── 5000.txt ├── prim2.c ├── utils │ ├── turtle.h │ ├── lsys.h │ └── random.h ├── prim.c ├── scroll.c ├── upsample.c ├── colorcard.c ├── README.md ├── plants.c ├── py │ ├── wiki.py │ └── mesh.py ├── bottles.c ├── mesh.c └── filters.c ├── .gitignore ├── fonts ├── tecate │ ├── 4 │ │ └── 4thD.hex │ ├── 5 │ │ └── 5thElement.hex │ ├── 7 │ │ └── bitocra7.hex │ ├── 8 │ │ └── spleen-5x8.hex │ ├── 9 │ │ ├── Tamzen5x9b.hex │ │ ├── Tamzen5x9r.hex │ │ ├── TamzenForPowerline5x9b.hex │ │ └── TamzenForPowerline5x9r.hex │ ├── 10 │ │ ├── cherry-10-b.hex │ │ └── cherry-10-r.hex │ ├── 11 │ │ └── HaxorMedium-10.hex │ ├── 12 │ │ ├── Tamzen6x12b.hex │ │ ├── Tamzen6x12r.hex │ │ ├── TamzenForPowerline6x12b.hex │ │ └── TamzenForPowerline6x12r.hex │ ├── 15 │ │ ├── neep-pre-ampersand-08x15.hex │ │ ├── neep-pre-ampersand-08x15-bold.hex │ │ ├── neep-post-ampersand-08x15.hex │ │ ├── neep-post-ampersand-08x15-bold.hex │ │ ├── neep-iso8859-1-part-08x15.hex │ │ ├── neep-iso8859-15-part-08x15.hex │ │ ├── neep-iso8859-2-part-08x15.hex │ │ ├── neep-iso8859-9-part-08x15.hex │ │ ├── neep-iso8859-1-part-08x15-bold.hex │ │ ├── neep-iso8859-15-part-08x15-bold.hex │ │ ├── neep-iso8859-2-part-08x15-bold.hex │ │ └── neep-iso8859-9-part-08x15-bold.hex │ ├── 20 │ │ ├── neep-pre-ampersand-10x20.hex │ │ └── neep-pre-ampersand-10x20-bold.hex │ ├── 24 │ │ ├── neep-pre-ampersand-12x24.hex │ │ └── neep-pre-ampersand-12x24-bold.hex │ └── README.txt ├── README.txt └── freeglut8x12.hex ├── tools ├── cat_c.py ├── make_font_test_code.py ├── bdf2hex.py ├── embed_font_c.py ├── make_md_doc.py └── make_swig_interface.py └── doc └── man └── man3 ├── r1b_im_t.3 ├── r1b_mesh_t.3 └── r1b_font_t.3 /swig/_r1b.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/swig/_r1b.so -------------------------------------------------------------------------------- /gallery/lsys.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/gallery/lsys.png -------------------------------------------------------------------------------- /gallery/prim2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/gallery/prim2.png -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | *.css linguist-detectable=false 2 | *.html linguist-detectable=false 3 | -------------------------------------------------------------------------------- /gallery/bottles.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/gallery/bottles.png -------------------------------------------------------------------------------- /gallery/scroll.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/gallery/scroll.png -------------------------------------------------------------------------------- /gallery/teapots.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/gallery/teapots.png -------------------------------------------------------------------------------- /examples/out/fonts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/fonts.png -------------------------------------------------------------------------------- /examples/out/prim.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/prim.png -------------------------------------------------------------------------------- /examples/out/prim2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/prim2.png -------------------------------------------------------------------------------- /examples/out/wiki.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/wiki.png -------------------------------------------------------------------------------- /gallery/colorcard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/gallery/colorcard.png -------------------------------------------------------------------------------- /examples/assets/r1b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/assets/r1b.png -------------------------------------------------------------------------------- /examples/out/bottles.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/bottles.png -------------------------------------------------------------------------------- /examples/out/filters.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/filters.png -------------------------------------------------------------------------------- /examples/out/plants.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/plants.png -------------------------------------------------------------------------------- /examples/out/scroll.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/scroll.png -------------------------------------------------------------------------------- /examples/out/teapots.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/teapots.png -------------------------------------------------------------------------------- /examples/assets/david.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/assets/david.png -------------------------------------------------------------------------------- /examples/assets/peppers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/assets/peppers.png -------------------------------------------------------------------------------- /examples/assets/sudoku.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/assets/sudoku.jpg -------------------------------------------------------------------------------- /examples/out/colorcard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/colorcard.png -------------------------------------------------------------------------------- /examples/out/manual/01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/manual/01.png -------------------------------------------------------------------------------- /examples/out/manual/02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/manual/02.png -------------------------------------------------------------------------------- /examples/out/manual/03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/manual/03.png -------------------------------------------------------------------------------- /examples/out/manual/04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/manual/04.png -------------------------------------------------------------------------------- /examples/out/manual/05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/manual/05.png -------------------------------------------------------------------------------- /examples/out/manual/06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/manual/06.png -------------------------------------------------------------------------------- /examples/out/manual/07.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/manual/07.png -------------------------------------------------------------------------------- /examples/out/manual/08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/manual/08.png -------------------------------------------------------------------------------- /examples/out/manual/09.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/manual/09.png -------------------------------------------------------------------------------- /examples/out/manual/10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/manual/10.png -------------------------------------------------------------------------------- /examples/out/manual/11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/manual/11.png -------------------------------------------------------------------------------- /examples/out/manual/12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/manual/12.png -------------------------------------------------------------------------------- /examples/out/manual/13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/manual/13.png -------------------------------------------------------------------------------- /examples/out/manual/14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/manual/14.png -------------------------------------------------------------------------------- /examples/out/upsample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/out/upsample.png -------------------------------------------------------------------------------- /examples/assets/gradient.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/assets/gradient.png -------------------------------------------------------------------------------- /examples/assets/upsample_test.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LingDong-/r1b/HEAD/examples/assets/upsample_test.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | a.out 3 | */__pycache__/ 4 | */*.o 5 | r1b_tmp 6 | py/examples/r1b_tmp 7 | doc/html/* 8 | doc/xml/* 9 | examples/manual.c 10 | -------------------------------------------------------------------------------- /swig/compile_pi.sh: -------------------------------------------------------------------------------- 1 | # swig -python r1b.i 2 | gcc -O3 -fpic -I/usr/include/python3.4 -c r1b_wrap.c ../build/r1b.c -std=c99 3 | gcc -shared r1b_wrap.o r1b.o -o _r1b.so -------------------------------------------------------------------------------- /fonts/tecate/README.txt: -------------------------------------------------------------------------------- 1 | Original BDF versions were downloaded from: 2 | 3 | https://github.com/Tecate/bitmap-fonts 4 | 5 | Automatically converted to unifont .hex format with a script. 6 | See aforementioned repo for the original font authors. 7 | 8 | -------------------------------------------------------------------------------- /swig/compile.sh: -------------------------------------------------------------------------------- 1 | swig -python r1b.i 2 | gcc -O3 -std=c99 -c ../build/r1b.c r1b_wrap.c -I/usr/local/Cellar/python/3.7.6_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m 3 | gcc $(python3-config --ldflags) -dynamiclib *.o -o _r1b.so -I/usr/local/Cellar/python/3.7.6_1/Frameworks/Python.framework/Versions/3.7/lib/libpython3.7m.dylib 4 | -------------------------------------------------------------------------------- /fonts/README.txt: -------------------------------------------------------------------------------- 1 | Fonts 2 | ------------ 3 | 4 | Fonts included here might have their own licensing different from the r1b library 5 | 6 | Original Sources 7 | ------------ 8 | 9 | unifont: https://savannah.gnu.org/projects/unifont 10 | 11 | freeglut: http://freeglut.sourceforge.net freeglut/freeglut_font_data.c (here cropped to 8x12 and converted to HEX) 12 | 13 | tecate: https://github.com/Tecate/bitmap-fonts (originally in BDF format, here converted to HEX) -------------------------------------------------------------------------------- /tools/cat_c.py: -------------------------------------------------------------------------------- 1 | import os 2 | os.chdir("../") 3 | 4 | # lines = open("r1b.h",'r').read().split("\n") 5 | # for i in range(len(lines)): 6 | # if lines[i].startswith('#include "'): 7 | # f = lines[i].split('"')[1] 8 | # lines[i] = open(f,'r').read() 9 | 10 | # out = "\n".join(lines); 11 | 12 | # open("build/r1b.h",'w').write(out); 13 | 14 | 15 | out = open("r1b.h",'r').read()\ 16 | .replace("#include R1B_CONFIG_STBI_PATH" ,"\n"+open("external/stb_image.h", 'r').read()+"\n")\ 17 | .replace("#include R1B_CONFIG_STBIW_PATH","\n"+open("external/stb_image_write.h",'r').read()+"\n")\ 18 | 19 | 20 | open("build/r1b.h",'w').write(out); 21 | open("build/r1b.c",'w').write('#include "r1b.h"'); -------------------------------------------------------------------------------- /tools/make_font_test_code.py: -------------------------------------------------------------------------------- 1 | import os 2 | from glob import glob 3 | 4 | out = "" 5 | 6 | hxs = sorted(glob("../fonts/tecate/*/*.hex"),key=lambda x:-int(x.split("/")[-2])) 7 | 8 | y = 2 9 | for hx in hxs: 10 | h = int(hx.split("/")[-2]) 11 | hx = hx.replace("../","") 12 | 13 | bname = hx.split("/")[-1].split(".")[0]; 14 | name = "font_"+bname.replace("-","_") 15 | 16 | out += f'printf("testing {bname}...\\n");\n' 17 | out += f'r1b_font_t {name} = r1b_load_font_hex("{hx}",{h},0,INT_MAX,R1B_FLAG_SORTED);\n'; 18 | out += f'r1b_text(&im, L"{bname}: Sphinx of black quartz, judge my vow! 0.123456789",2,{y},&{name},1,R1B_BLIT_SET,0);\n'; 19 | out += f'r1b_destroy_font(&{name});\n' 20 | 21 | out += "\n" 22 | y += h+2; 23 | 24 | print(out) -------------------------------------------------------------------------------- /doc/man/man3/r1b_im_t.3: -------------------------------------------------------------------------------- 1 | .TH "r1b_im_t" 3 "Wed Jul 1 2020" "Version 0.0.1" "r1b" \" -*- nroff -*- 2 | .ad l 3 | .nh 4 | .SH NAME 5 | r1b_im_t \- datatype for a (1-channel grayscale or binary) image 6 | 7 | .SH SYNOPSIS 8 | .br 9 | .PP 10 | .PP 11 | \fC#include \fP 12 | .SS "Data Fields" 13 | 14 | .in +1c 15 | .ti -1c 16 | .RI "int \fBw\fP" 17 | .br 18 | .ti -1c 19 | .RI "int \fBh\fP" 20 | .br 21 | .ti -1c 22 | .RI "float * \fBdata\fP" 23 | .br 24 | .in -1c 25 | .SH "Detailed Description" 26 | .PP 27 | datatype for a (1-channel grayscale or binary) image 28 | .SH "Field Documentation" 29 | .PP 30 | .SS "float* data" 31 | image data: row-major array of floats 32 | .SS "int h" 33 | height 34 | .SS "int w" 35 | width 36 | .br 37 | 38 | 39 | .SH "Author" 40 | .PP 41 | Generated automatically by Doxygen for r1b from the source code\&. 42 | -------------------------------------------------------------------------------- /tools/bdf2hex.py: -------------------------------------------------------------------------------- 1 | import os 2 | from glob import glob 3 | 4 | bdfs = glob("../../bitmap-fonts/bitmap/*/bdf/*.bdf")+glob("../../bitmap-fonts/bitmap/*/*.bdf") 5 | 6 | def bdf2hex(path): 7 | 8 | s = open(path,'r').read() 9 | h = int(s.split("SIZE ")[1].strip().split(" ")[0]) 10 | a = [(int(x.split("ENCODING ")[1].split("\n")[0]),x.split("BITMAP\n")[1].split("\nENDCHAR")[0].split("\n")) for x in s.split("STARTCHAR")[1:]] 11 | 12 | how_strange = sum([len(x[1])!=h for x in a]); 13 | 14 | if (how_strange < 2) and len(a) >= 26: 15 | a = [x for x in a if len(x[1])==h] 16 | os.system("mkdir ../fonts/tecate/"+str(h)) 17 | 18 | hx = "\n".join([hex(x[0]).split('x')[1].zfill(4).upper()+":"+"".join(x[1]) for x in a]) 19 | open('../fonts/tecate/'+str(h)+"/"+(path.split("/")[-1].split(".")[0])+".hex",'w').write(hx) 20 | 21 | for b in bdfs: 22 | bdf2hex(b) 23 | 24 | -------------------------------------------------------------------------------- /tools/embed_font_c.py: -------------------------------------------------------------------------------- 1 | # typedef struct { 2 | # int h; 3 | # char* glyphs; 4 | # int n; 5 | # uint32_t* offsets; 6 | # uint8_t* sizes; 7 | # uint16_t* cmap; 8 | # int flags; 9 | # } r1b_font_t; 10 | 11 | path = "../fonts/freeglut8x12.hex" 12 | 13 | B = [[int(x[0:4],16),[int(x[i+5:i+7],16) for i in range(0,len(x)-5,2)]] for x in open(path,'r').read().split("\n") if len(x)][0:95] 14 | 15 | flatten = lambda l: [item for sublist in l for item in sublist] 16 | 17 | C = "static char R1B_FG8X12_GLYPHS [] = {"+",".join([str(y) for y in flatten([x[1] for x in B])])+"};" 18 | D = "static uint32_t R1B_FG8X12_OFFSETS[] = {"+",".join([str(x*2) for x in range(len(B))])+" };" 19 | E = "static uint8_t R1B_FG8X12_SIZES [] = {"+",".join([str(2) for x in range(len(B))])+" };" 20 | F = "static uint16_t R1B_FG8X12_CMAP [] = {"+",".join([str(x[0]) for x in B])+"};" 21 | # C = [y for y in C for x in y] 22 | 23 | 24 | print("\n".join([C,D,E,F])) 25 | 26 | -------------------------------------------------------------------------------- /doc/man/man3/r1b_mesh_t.3: -------------------------------------------------------------------------------- 1 | .TH "r1b_mesh_t" 3 "Wed Jul 1 2020" "Version 0.0.1" "r1b" \" -*- nroff -*- 2 | .ad l 3 | .nh 4 | .SH NAME 5 | r1b_mesh_t \- datatype for a 3D mesh 6 | 7 | .SH SYNOPSIS 8 | .br 9 | .PP 10 | .PP 11 | \fC#include \fP 12 | .SS "Data Fields" 13 | 14 | .in +1c 15 | .ti -1c 16 | .RI "float * \fBX\fP" 17 | .br 18 | .ti -1c 19 | .RI "float * \fBY\fP" 20 | .br 21 | .ti -1c 22 | .RI "float * \fBZ\fP" 23 | .br 24 | .ti -1c 25 | .RI "int * \fBtris\fP" 26 | .br 27 | .ti -1c 28 | .RI "float * \fBnorms\fP" 29 | .br 30 | .ti -1c 31 | .RI "int \fBn_vtx\fP" 32 | .br 33 | .ti -1c 34 | .RI "int \fBn_tri\fP" 35 | .br 36 | .in -1c 37 | .SH "Detailed Description" 38 | .PP 39 | datatype for a 3D mesh 40 | .SH "Field Documentation" 41 | .PP 42 | .SS "int n_tri" 43 | number of triangles 44 | .SS "int n_vtx" 45 | number of vertices 46 | .SS "float* norms" 47 | array of vertex normals (optional, can be NULL) 48 | .SS "int* tris" 49 | array of triangles (using vertex index) 50 | .SS "float* X" 51 | array of x coordinate of vertices 52 | .SS "float* Y" 53 | array of y coordinate of vertices 54 | .SS "float* Z" 55 | array of z coordinate of vertices 56 | 57 | .SH "Author" 58 | .PP 59 | Generated automatically by Doxygen for r1b from the source code\&. 60 | -------------------------------------------------------------------------------- /examples/prim2.c: -------------------------------------------------------------------------------- 1 | //gcc examples/prim2.c 2 | #include "../r1b.h" 3 | 4 | 5 | float randf(float lo, float hi){ 6 | return lo+((float)rand()/(float)RAND_MAX)*(hi-lo); 7 | } 8 | 9 | 10 | int main(){ 11 | 12 | r1b_im_t im = r1b_zeros(1536,384); 13 | r1b_im_t depth = r1b_infs(1536,384); 14 | 15 | float light[4] = {0.4,0.3,0.2,0.0}; 16 | float focal = 1000; 17 | 18 | for (int i = 0; i < 100; i++){ 19 | int rng = rand()%4; 20 | r1b_mesh_t mesh; 21 | switch(rng){ 22 | case 0: mesh = r1b_cube(0.5,0.5,0.5); break; 23 | case 1: mesh = r1b_sphere(0.6,20,20); break; 24 | case 2: mesh = r1b_cylinder(0.5,0.5,1,20); break; 25 | case 3: mesh = r1b_cone(0.5,0.5,1,20); break; 26 | } 27 | float scl = randf(0.5,1.5); 28 | r1b_scale_rotate_translate(&mesh, 29 | scl,scl,scl, 30 | randf(-1,1)*M_PI,randf(-1,1)*M_PI,randf(-1,1)*M_PI, 31 | randf(-4,4),randf(-2,2),randf(5,20) 32 | ); 33 | 34 | r1b_render_mesh(&im, &depth, &mesh, focal, NULL, light, 1, R1B_SHDR_NDOTLF, R1B_WIRE_FRONT); 35 | r1b_destroy_mesh(&mesh); 36 | } 37 | r1b_dither(&im,R1B_DTHR_FS); 38 | 39 | r1b_snapshot("examples/out/prim2.png",&im); 40 | 41 | r1b_transpose_flip(&im); 42 | r1b_lpr("Printer_USB_Thermal_Printer",&im); 43 | 44 | r1b_free(&im); 45 | r1b_free(&depth); 46 | 47 | r1b_cleanup(); 48 | } -------------------------------------------------------------------------------- /doc/man/man3/r1b_font_t.3: -------------------------------------------------------------------------------- 1 | .TH "r1b_font_t" 3 "Wed Jul 1 2020" "Version 0.0.1" "r1b" \" -*- nroff -*- 2 | .ad l 3 | .nh 4 | .SH NAME 5 | r1b_font_t \- datatype for a bitmap font 6 | .br 7 | 8 | 9 | .SH SYNOPSIS 10 | .br 11 | .PP 12 | .PP 13 | \fC#include \fP 14 | .SS "Data Fields" 15 | 16 | .in +1c 17 | .ti -1c 18 | .RI "int \fBh\fP" 19 | .br 20 | .ti -1c 21 | .RI "char * \fBglyphs\fP" 22 | .br 23 | .ti -1c 24 | .RI "int \fBn\fP" 25 | .br 26 | .ti -1c 27 | .RI "uint32_t * \fBoffsets\fP" 28 | .br 29 | .ti -1c 30 | .RI "uint8_t * \fBsizes\fP" 31 | .br 32 | .ti -1c 33 | .RI "uint16_t * \fBcmap\fP" 34 | .br 35 | .ti -1c 36 | .RI "int \fBflags\fP" 37 | .br 38 | .in -1c 39 | .SH "Detailed Description" 40 | .PP 41 | datatype for a bitmap font 42 | .br 43 | 44 | .SH "Field Documentation" 45 | .PP 46 | .SS "uint16_t* cmap" 47 | array of unicode code points for each glyph 48 | .SS "int flags" 49 | bitwise OR of flags: R1B_FLAG_SORTED: whether the glyphs are sorted by codepoint 50 | .SS "char* glyphs" 51 | number of glyphs 52 | .SS "int h" 53 | height of font 54 | .SS "int n" 55 | pointer to data for glyphs 56 | .SS "uint32_t* offsets" 57 | array of data offsets for each glyph 58 | .br 59 | 60 | .SS "uint8_t* sizes" 61 | array of sizes (width/4) for each glyph 62 | .br 63 | 64 | 65 | .SH "Author" 66 | .PP 67 | Generated automatically by Doxygen for r1b from the source code\&. 68 | -------------------------------------------------------------------------------- /fonts/tecate/15/neep-pre-ampersand-08x15.hex: -------------------------------------------------------------------------------- 1 | 0000:007E7E7E7E7E7E7E7E7E7E7E7E7E00 2 | 0001:00000000081C3E7F3E1C0800000000 3 | 0002:0055AA55AA55AA55AA55AA55AA55AA 4 | 0003:0044447C444444001F040404040400 5 | 0004:007C4078404040001F101E10101000 6 | 0005:00384440404438001E11111E121100 7 | 0006:0040404040407C001F101E10101000 8 | 0007:000038444444380000000000000000 9 | 0008:000000000808087F080808007F0000 10 | 0009:00446454544C440010101010101F00 11 | 000A:00444444282810001F040404040400 12 | 000B:10101010101010F000000000000000 13 | 000C:00000000000000F010101010101010 14 | 000D:000000000000001F10101010101010 15 | 000E:101010101010101F00000000000000 16 | 000F:10101010101010FF10101010101010 17 | 0010:00FF00000000000000000000000000 18 | 0011:00000000FF00000000000000000000 19 | 0012:00000000000000FF00000000000000 20 | 0013:00000000000000000000FF00000000 21 | 0014:00000000000000000000000000FF00 22 | 0015:101010101010101F10101010101010 23 | 0016:10101010101010F010101010101010 24 | 0017:10101010101010FF00000000000000 25 | 0018:00000000000000FF10101010101010 26 | 0019:101010101010101010101010101010 27 | 001A:0000040810204020100804007E0000 28 | 001B:0000201008040204081020007E0000 29 | 001C:00000000007E242424242422000000 30 | 001D:0000000002047E08107E2040000000 31 | 001E:00001C32202020782020207E000000 32 | 001F:000000000000103810000000000000 33 | 0020:000000000000000000000000000000 34 | 0021:000010101010101010001010000000 35 | 0022:000028282828000000000000000000 36 | 0023:00000024247E24247E242400000000 37 | 0024:000000103C50503814147810000000 38 | 0025:0000225254280810142A4A44000000 -------------------------------------------------------------------------------- /fonts/tecate/15/neep-pre-ampersand-08x15-bold.hex: -------------------------------------------------------------------------------- 1 | 0000:007E7E7E7E7E7E7E7E7E7E7E7E7E00 2 | 0001:00000000081C3E7F3E1C0800000000 3 | 0002:0055AA55AA55AA55AA55AA55AA55AA 4 | 0003:0066667E666666003F0C0C0C0C0C00 5 | 0004:007C6078606060001F181E18181800 6 | 0005:003C666060663C003E33333E3E3300 7 | 0006:0060606060607C001F181E18181800 8 | 0007:00003C7E667E3C0000000000000000 9 | 0008:000000181818FFFF18181800FFFF00 10 | 0009:006676766E6E660018181818181F00 11 | 000A:00666666663C18003F0C0C0C0C0C00 12 | 000B:18181818181818F8F8000000000000 13 | 000C:00000000000000F8F8181818181818 14 | 000D:000000000000001F1F181818181818 15 | 000E:181818181818181F1F000000000000 16 | 000F:18181818181818FFFF181818181818 17 | 0010:00FFFF000000000000000000000000 18 | 0011:00000000FFFF000000000000000000 19 | 0012:00000000000000FFFF000000000000 20 | 0013:00000000000000000000FFFF000000 21 | 0014:000000000000000000000000FFFF00 22 | 0015:181818181818181F1F181818181818 23 | 0016:18181818181818F8F8181818181818 24 | 0017:18181818181818FFFF000000000000 25 | 0018:00000000000000FFFF181818181818 26 | 0019:181818181818181818181818181818 27 | 001A:0000060C18306030180C06007F7F00 28 | 001B:000030180C0603060C1830007F7F00 29 | 001C:00000000007F7F3636363733000000 30 | 001D:00000000060C7E7E187E7E30600000 31 | 001E:00001E3F33307C7C30307F7F000000 32 | 001F:000000000000183C18000000000000 33 | 0020:000000000000000000000000000000 34 | 0021:000018181818181818001818000000 35 | 0022:000036363636000000000000000000 36 | 0023:00000036367F7F367F7F3636000000 37 | 0024:0000083E7E687C3E0E7E7C08000000 38 | 0025:00002373762C0C181A376762000000 -------------------------------------------------------------------------------- /examples/utils/turtle.h: -------------------------------------------------------------------------------- 1 | 2 | typedef struct { 3 | float x; 4 | float y; 5 | float a; 6 | } turtle_state_t; 7 | 8 | typedef struct { 9 | r1b_im_t* im; 10 | turtle_state_t* st; 11 | int n_st; 12 | int m_st; 13 | char pd; 14 | } turtle_t; 15 | 16 | turtle_t turtle_init(r1b_im_t* im){ 17 | turtle_t t; 18 | t.im = im; 19 | t.st = (turtle_state_t*)calloc(1,sizeof(turtle_state_t)); 20 | t.n_st = 1; 21 | t.m_st = 1; 22 | t.pd = 0; 23 | return t; 24 | } 25 | 26 | void turtle_goto(turtle_t* t, float x, float y){ 27 | float x0 = t->st[t->n_st-1].x; 28 | float y0 = t->st[t->n_st-1].y; 29 | 30 | t->st[t->n_st-1].x = x; 31 | t->st[t->n_st-1].y = y; 32 | 33 | if (t->pd){ 34 | r1b_line(t->im,x0,y0,t->st[t->n_st-1].x,t->st[t->n_st-1].y,1,R1B_BLIT_SET); 35 | } 36 | } 37 | 38 | void turtle_forward(turtle_t* t, float d){ 39 | turtle_goto(t,t->st[t->n_st-1].x+cos(t->st[t->n_st-1].a)*d, 40 | t->st[t->n_st-1].y+sin(t->st[t->n_st-1].a)*d); 41 | } 42 | 43 | void turtle_turn(turtle_t* t, float a){ 44 | t->st[t->n_st-1].a += a; 45 | } 46 | 47 | void turtle_push(turtle_t* t){ 48 | if (!(t->m_st > t->n_st)){ 49 | t->m_st = t->n_st+10; 50 | t->st = realloc(t->st,(t->m_st)*sizeof(turtle_state_t)); 51 | } 52 | t->n_st ++; 53 | memcpy(&(t->st[t->n_st-1]),&(t->st[t->n_st-2]),sizeof(turtle_state_t)); 54 | } 55 | 56 | void turtle_pop(turtle_t* t){ 57 | t->n_st --; 58 | } 59 | 60 | void turtle_pendown(turtle_t* t){ 61 | t->pd = 1; 62 | } 63 | void turtle_penup(turtle_t* t){ 64 | t->pd = 0; 65 | } 66 | 67 | void turtle_destroy(turtle_t* t){ 68 | free(t->st); 69 | } 70 | 71 | 72 | -------------------------------------------------------------------------------- /tools/make_md_doc.py: -------------------------------------------------------------------------------- 1 | import xml.etree.cElementTree as ET 2 | 3 | print("# r1b API Reference") 4 | 5 | tree = ET.ElementTree(file="../doc/xml/r1b_8h.xml") 6 | sections = tree.iter("sectiondef") 7 | for sec in sections: 8 | if sec.attrib['kind'] != "func": 9 | continue 10 | memdefs = sec.iter("memberdef") 11 | for defn in memdefs: 12 | typ = defn.find("type").text 13 | if not typ: 14 | typ = defn.find("type").find("ref").text 15 | name = defn.find("name").text; 16 | brief = defn.find("briefdescription").find("para") 17 | if brief != None: 18 | brief = brief.text 19 | 20 | detail = defn.find("detaileddescription").find("para") 21 | if detail != None: 22 | detail = detail.text; 23 | 24 | params = defn.iter("parameteritem") 25 | 26 | if brief == None and detail == None: 27 | continue 28 | 29 | if brief.startswith("(internal use)"): 30 | continue 31 | # print(typ,name,brief,detail) 32 | 33 | defstr = defn.find("definition").text 34 | argstr = defn.find("argsstring").text 35 | print("### `"+defstr+argstr+"`") 36 | 37 | print("```") 38 | if brief != None: 39 | print(brief) 40 | if detail != None: 41 | print(detail) 42 | print("```") 43 | 44 | print("|parameter|description|") 45 | print("|---|---|") 46 | for par in params: 47 | pname = par.find("parameternamelist").find("parametername").text 48 | pdesc = par.find("parameterdescription").find("para").text 49 | 50 | print("|`"+pname+"`|```"+pdesc+"```|") 51 | 52 | ret = defn.iter("simplesect") 53 | print("\n") 54 | for r in ret: 55 | print("**return** `"+r.find("para").text+"`\n") 56 | 57 | print("\n\n-----------------\n\n") 58 | 59 | -------------------------------------------------------------------------------- /fonts/tecate/4/4thD.hex: -------------------------------------------------------------------------------- 1 | 0020:00000000 2 | 0021:40400040 3 | 0022:A0A00000 4 | 0023:60F0F060 5 | 0024:40E0E040 6 | 0025:90204090 7 | 0026:C0B0E0D0 8 | 0027:20400000 9 | 0028:20404020 10 | 0029:40202040 11 | 002A:40E040A0 12 | 002B:0040E040 13 | 002C:00006020 14 | 002D:0000E000 15 | 002E:00000040 16 | 002F:20204040 17 | 0030:E0A0A0E0 18 | 0031:C04040E0 19 | 0032:E020C0E0 20 | 0033:E06020E0 21 | 0034:A0A0E020 22 | 0035:E0C020E0 23 | 0036:C080E0E0 24 | 0037:E0204040 25 | 0038:60E0A0E0 26 | 0039:E0E02060 27 | 003A:00400040 28 | 003B:40006020 29 | 003C:00204020 30 | 003D:00E000E0 31 | 003E:00402040 32 | 003F:E0600040 33 | 0040:F09050F0 34 | 0041:60A0E0A0 35 | 0042:C0E0A0E0 36 | 0043:608080E0 37 | 0044:C0A0A0C0 38 | 0045:E0C080E0 39 | 0046:E0C08080 40 | 0047:6080A0E0 41 | 0048:A0A0E0A0 42 | 0049:E04040E0 43 | 004A:6020A0E0 44 | 004B:A0C0C0A0 45 | 004C:808080E0 46 | 004D:E0E0E0A0 47 | 004E:E0A0A0A0 48 | 004F:E0A0A0E0 49 | 0050:E0A0E080 50 | 0051:E0A0E0F0 51 | 0052:E0A0C0A0 52 | 0053:E08060E0 53 | 0054:E0404040 54 | 0055:A0A0A0E0 55 | 0056:A0A0C080 56 | 0057:A0E0E0E0 57 | 0058:A040A0A0 58 | 0059:A0E04040 59 | 005A:E02040E0 60 | 005B:60404060 61 | 005C:40402020 62 | 005D:60202060 63 | 005E:40A00000 64 | 005F:000000F0 65 | 0060:80400000 66 | 0061:0060E0E0 67 | 0062:80E0A0E0 68 | 0063:006080E0 69 | 0064:20E0A0E0 70 | 0065:00E0E0C0 71 | 0066:6040E040 72 | 0067:60E020C0 73 | 0068:80E0A0A0 74 | 0069:40004040 75 | 006A:400040C0 76 | 006B:80A0C0A0 77 | 006C:C0404060 78 | 006D:00E0E0A0 79 | 006E:00E0A0A0 80 | 006F:00E0A0E0 81 | 0070:40A0C080 82 | 0071:40A06020 83 | 0072:00E08080 84 | 0073:006040C0 85 | 0074:40604060 86 | 0075:00A0A0E0 87 | 0076:00A0E040 88 | 0077:00A0E0E0 89 | 0078:00A040A0 90 | 0079:00A060C0 91 | 007A:00C04060 92 | 007B:60C04060 93 | 007C:40404040 94 | 007D:C06040C0 95 | 007E:20E08000 -------------------------------------------------------------------------------- /examples/prim.c: -------------------------------------------------------------------------------- 1 | //gcc examples/prim.c 2 | #include "../r1b.h" 3 | 4 | 5 | int main(){ 6 | 7 | r1b_im_t im = r1b_zeros(1536,384); 8 | r1b_im_t depth = r1b_infs(1536,384); 9 | 10 | r1b_mesh_t cube = r1b_cube(1,1,1); 11 | r1b_mesh_t sphere = r1b_sphere(0.6,20,20); 12 | r1b_mesh_t cylinder= r1b_cylinder(0.5,0.5,1,20); 13 | r1b_mesh_t cone = r1b_cone(0.5,0.5,1,20); 14 | 15 | r1b_scale_rotate_translate(&cube, 1,1,1, -0.3,0,0, -2.4,0,4.5); 16 | r1b_scale_rotate_translate(&sphere, 1,1,1, -0.3,0,0, -0.8,0,4.5); 17 | r1b_scale_rotate_translate(&cylinder, 1,1,1, -0.3,0,0, 0.8,0,4.5); 18 | r1b_scale_rotate_translate(&cone, 1,1,1, -0.3,0,0, 2.4,0,4.5); 19 | 20 | float light[4] = {0.4,0.3,0.2,0.0}; 21 | float focal = 1000; 22 | r1b_render_mesh(&im, &depth, &cube, focal, NULL, light, 1, R1B_SHDR_NDOTLF, R1B_WIRE_FRONT); 23 | r1b_render_mesh(&im, &depth, &sphere, focal, NULL, light, 1, R1B_SHDR_NDOTLF, R1B_WIRE_FRONT); 24 | r1b_render_mesh(&im, &depth, &cylinder, focal, NULL, light, 1, R1B_SHDR_NDOTLF, R1B_WIRE_FRONT); 25 | r1b_render_mesh(&im, &depth, &cone, focal, NULL, light, 1, R1B_SHDR_NDOTLF, R1B_WIRE_FRONT); 26 | 27 | r1b_dither(&im,R1B_DTHR_FS); 28 | 29 | r1b_text(&im, L"Cube", 30, 10, R1B_FONT_FG8X12, 1, R1B_BLIT_SET, 0); 30 | r1b_text(&im, L"Sphere", 30+384, 10, R1B_FONT_FG8X12, 1, R1B_BLIT_SET, 0); 31 | r1b_text(&im, L"Cylinder",30+384*2,10, R1B_FONT_FG8X12, 1, R1B_BLIT_SET, 0); 32 | r1b_text(&im, L"Cone", 30+384*3,10, R1B_FONT_FG8X12, 1, R1B_BLIT_SET, 0); 33 | 34 | r1b_snapshot("examples/out/prim.png",&im); 35 | 36 | r1b_transpose_flip(&im); 37 | // r1b_lpr("Printer_USB_Thermal_Printer",&im); 38 | 39 | r1b_free(&im); 40 | r1b_free(&depth); 41 | r1b_destroy_mesh(&cube); 42 | r1b_destroy_mesh(&sphere); 43 | r1b_destroy_mesh(&cylinder); 44 | r1b_destroy_mesh(&cone); 45 | 46 | r1b_cleanup(); 47 | } -------------------------------------------------------------------------------- /examples/scroll.c: -------------------------------------------------------------------------------- 1 | #include "../r1b.h" 2 | 3 | 4 | wchar_t* read_file(char* path, int n){ 5 | char* raw = (char*)malloc(sizeof(char)*n*2); 6 | FILE *fp; 7 | char c; 8 | int i = 0; 9 | fp = fopen(path,"r"); 10 | while(1) { 11 | c = fgetc(fp); 12 | if( feof(fp) ) { 13 | break; 14 | } 15 | raw[i] = c; 16 | i++; 17 | } 18 | raw[i] = 0; 19 | fclose(fp); 20 | 21 | wchar_t* wstr = (wchar_t*)malloc(sizeof(wchar_t)*n); 22 | 23 | int len = i; 24 | 25 | void* next = (void*)raw; 26 | int e; 27 | i = 0; 28 | while((char*)next <= (char*)raw+len){ 29 | next = r1b_utf8_decode(next, (uint32_t *)&wstr[i], &e); 30 | i++; 31 | } 32 | wstr[i] = 0; 33 | wstr[i+1] = 0; 34 | wstr[i+2] = 0; 35 | wstr[i+3] = 0; 36 | free(raw); 37 | return wstr; 38 | } 39 | 40 | int main(){ 41 | r1b_font_t font = r1b_load_font_hex("fonts/unifont.hex",16,0,INT_MAX,R1B_FLAG_SORTED); 42 | 43 | 44 | wchar_t* txt = read_file("examples/assets/5000.txt",10000); 45 | 46 | r1b_im_t im = r1b_zeros(3976,384); 47 | 48 | r1b_line(&im,0.5,0.5,im.w-0.5,0.5,1,R1B_BLIT_SET); 49 | r1b_line(&im,im.w-0.5,0.5,im.w-0.5,im.h-0.5,1,R1B_BLIT_SET); 50 | r1b_line(&im,0.5,im.h-0.5,im.w-0.5,im.h-0.5,1,R1B_BLIT_SET); 51 | r1b_line(&im,0.5,0.5,0.5,im.h-0.5,1,R1B_BLIT_SET); 52 | 53 | int i = 0; 54 | int x = 3960; 55 | int y = 0; 56 | while(1){ 57 | if (txt[i] == 0){ 58 | break; 59 | } 60 | r1b_putchar(&im,(int)txt[i],x,y,&font,1,R1B_BLIT_SET,0); 61 | y += 16; 62 | if (y >= 384){ 63 | y = 0; 64 | x -= 18; 65 | r1b_line(&im,x+16,0,x+16,384,1,R1B_BLIT_SET); 66 | } 67 | i++; 68 | } 69 | 70 | r1b_snapshot("examples/out/scroll.png",&im); 71 | 72 | r1b_transpose_flip(&im); 73 | r1b_lpr("Printer_USB_Thermal_Printer",&im); 74 | } -------------------------------------------------------------------------------- /fonts/tecate/5/5thElement.hex: -------------------------------------------------------------------------------- 1 | 0020:0000000000 2 | 0021:4040004000 3 | 0022:A0A0000000 4 | 0023:60F0F06000 5 | 0024:40E0E04000 6 | 0025:9020409000 7 | 0026:C0B0E0D000 8 | 0027:2040000000 9 | 0028:2040402000 10 | 0029:4020204000 11 | 002A:40E040A000 12 | 002B:0040E04000 13 | 002C:0000006020 14 | 002D:0000E00000 15 | 002E:0000004000 16 | 002F:2020404000 17 | 0030:E0A0A0E000 18 | 0031:C04040E000 19 | 0032:E020C0E000 20 | 0033:E06020E000 21 | 0034:A0A0E02000 22 | 0035:E0C020E000 23 | 0036:C080E0E000 24 | 0037:E020404000 25 | 0038:60E0A0E000 26 | 0039:E0E0206000 27 | 003A:0040004000 28 | 003B:0040006020 29 | 003C:0020402000 30 | 003D:00E000E000 31 | 003E:0040204000 32 | 003F:E020600040 33 | 0040:F09010D0F0 34 | 0041:60A0E0A000 35 | 0042:C0E0A0E000 36 | 0043:608080E000 37 | 0044:C0A0A0C000 38 | 0045:E0C080E000 39 | 0046:E0C0808000 40 | 0047:6080A0E000 41 | 0048:A0A0E0A000 42 | 0049:E04040E000 43 | 004A:6020A0E000 44 | 004B:A0C0C0A000 45 | 004C:808080E000 46 | 004D:E0E0E0A000 47 | 004E:E0A0A0A000 48 | 004F:E0A0A0E000 49 | 0050:E0A0E08000 50 | 0051:E0A0E0F000 51 | 0052:E0A0C0A000 52 | 0053:E08060E000 53 | 0054:E040404000 54 | 0055:A0A0A0E000 55 | 0056:A0A0C08000 56 | 0057:A0E0E0E000 57 | 0058:A040A0A000 58 | 0059:A0E0404000 59 | 005A:E02040E000 60 | 005B:6040406000 61 | 005C:4040202000 62 | 005D:6020206000 63 | 005E:40A0000000 64 | 005F:00000000F0 65 | 0060:8040000000 66 | 0061:0060A0E000 67 | 0062:80E0A0E000 68 | 0063:006080E000 69 | 0064:20E0A0E000 70 | 0065:00E0A0C000 71 | 0066:2040604000 72 | 0067:0060A060C0 73 | 0068:80E0A0A000 74 | 0069:4000404000 75 | 006A:40004040C0 76 | 006B:80A0C0A000 77 | 006C:C040406000 78 | 006D:00E0E0A000 79 | 006E:00E0A0A000 80 | 006F:00E0A0E000 81 | 0070:00E0A0E080 82 | 0071:00E0A0E020 83 | 0072:00E0808000 84 | 0073:006040C000 85 | 0074:4060406000 86 | 0075:00A0A0E000 87 | 0076:00A0E04000 88 | 0077:00A0E0E000 89 | 0078:00A040A000 90 | 0079:00A0E020C0 91 | 007A:00C0406000 92 | 007B:60C0406000 93 | 007C:4040404040 94 | 007D:C06040C000 95 | 007E:20E0800000 -------------------------------------------------------------------------------- /examples/upsample.c: -------------------------------------------------------------------------------- 1 | //gcc examples/upsample.c 2 | #include "../r1b.h" 3 | 4 | int main(){ 5 | r1b_font_t font = r1b_load_font_hex("fonts/unifont.hex",16,0,INT_MAX,R1B_FLAG_SORTED); 6 | 7 | r1b_im_t canvas = r1b_zeros(384,1860); 8 | 9 | r1b_im_t src = r1b_zeros(128,128); 10 | r1b_text(&src,L"SOME TEXT 蠅頭\n檗窠 more text\nαβγδεζηθικλμνξ",8,8,&font,1,R1B_BLIT_SET,0); 11 | r1b_im_t img = r1b_read("examples/assets/upsample_test.png"); 12 | r1b_paste(&src,&img,0,64); 13 | r1b_paste(&canvas,&src,0,0); 14 | 15 | { 16 | r1b_im_t dst = r1b_copy_of(&src); 17 | r1b_upsample2x(&dst, R1B_UP2X_SAA5050); 18 | r1b_paste(&canvas,&dst,0,128); 19 | r1b_free(&dst); 20 | 21 | r1b_text_ascii(&canvas,"SA5050",0,128,R1B_FONT_FG8X12,1,R1B_BLIT_SET,0); 22 | } 23 | 24 | { 25 | r1b_im_t dst = r1b_copy_of(&src); 26 | r1b_upsample2x(&dst, R1B_UP2X_EAGLE); 27 | r1b_paste(&canvas,&dst,0,128+256); 28 | r1b_free(&dst); 29 | 30 | r1b_text_ascii(&canvas,"Eagle",0,128+256,R1B_FONT_FG8X12,1,R1B_BLIT_SET,0); 31 | } 32 | 33 | { 34 | r1b_im_t dst = r1b_copy_of(&src); 35 | r1b_upsample2x(&dst, R1B_UP2X_EPX); 36 | r1b_paste(&canvas,&dst,0,128+256*2); 37 | r1b_free(&dst); 38 | 39 | r1b_text_ascii(&canvas,"EPX",0,128+256*2,R1B_FONT_FG8X12,1,R1B_BLIT_SET,0); 40 | } 41 | 42 | { 43 | r1b_im_t dst = r1b_copy_of(&src); 44 | r1b_upsample2x(&dst, R1B_UP2X_HQX); 45 | r1b_paste(&canvas,&dst,0,128+256*3); 46 | r1b_free(&dst); 47 | 48 | r1b_text_ascii(&canvas,"hq2x",0,128+256*3,R1B_FONT_FG8X12,1,R1B_BLIT_SET,0); 49 | } 50 | 51 | { 52 | r1b_im_t dst = r1b_copy_of(&src); 53 | r1b_bedstead(&dst,3); 54 | 55 | r1b_paste(&canvas,&dst,0,128+256*4); 56 | r1b_free(&dst); 57 | 58 | r1b_text_ascii(&canvas,"Bedstead",0,128+256*4,R1B_FONT_FG8X12,1,R1B_BLIT_SET,0); 59 | } 60 | 61 | // r1b_dither(&canvas,R1B_DTHR_FS); 62 | 63 | r1b_snapshot("examples/out/upsample.png",&canvas); 64 | 65 | r1b_destroy_font(&font); 66 | r1b_free(&canvas); 67 | r1b_cleanup(); 68 | } -------------------------------------------------------------------------------- /examples/colorcard.c: -------------------------------------------------------------------------------- 1 | #include "../r1b.h" 2 | 3 | r1b_im_t* get_nth_pattern(n){ 4 | // access each builtin pattern by index 5 | switch (n) { 6 | case 0: return R1B_PATTERN(SOLID); 7 | case 1: return R1B_PATTERN(GRAY5); 8 | case 2: return R1B_PATTERN(GRAY4); 9 | case 3: return R1B_PATTERN(GRAY3); 10 | case 4: return R1B_PATTERN(GRAY2); 11 | case 5: return R1B_PATTERN(GRAY1); 12 | case 6: return R1B_PATTERN(EMPTY); 13 | case 7: return R1B_PATTERN(GRID1); 14 | case 8: return R1B_PATTERN(GRID2); 15 | case 9: return R1B_PATTERN(DOTS1); 16 | case 10: return R1B_PATTERN(DOTS2); 17 | case 11: return R1B_PATTERN(DOTSR); 18 | case 12: return R1B_PATTERN(HRZL1); 19 | case 13: return R1B_PATTERN(HRZL2); 20 | case 14: return R1B_PATTERN(VRTL1); 21 | case 15: return R1B_PATTERN(VRTL2); 22 | case 16: return R1B_PATTERN(DGNLL); 23 | case 17: return R1B_PATTERN(DGNLR); 24 | case 18: return R1B_PATTERN(CROSS); 25 | case 19: return R1B_PATTERN(BRICK); 26 | case 20: return R1B_PATTERN(SCALE); 27 | case 21: return R1B_PATTERN(WAVES); 28 | case 22: return R1B_PATTERN(CHESS); 29 | case 23: return R1B_PATTERN(DMOND); 30 | } 31 | return NULL; 32 | } 33 | int main(){ 34 | r1b_im_t im = r1b_zeros(384,1150); 35 | 36 | for (int i = 0; i < 24; i++){ 37 | r1b_im_t* pttn = get_nth_pattern(i); 38 | // draw a rect for each pattern 39 | r1b_rect(&im, 40 | 0, i*50-50, // upper left corner 41 | 80, (i+1)*50, // lower right corner 42 | pttn, R1B_BLIT_SET); 43 | } 44 | 45 | r1b_im_t img = r1b_read("examples/assets/gradient.png"); 46 | 47 | r1b_resample(&img,80,1250,R1B_SMPL_BILINEAR); 48 | 49 | r1b_im_t img2 = r1b_copy_of(&img); 50 | 51 | r1b_dither(&img,R1B_DTHR_FS); 52 | r1b_paste(&im,&img,152,-100); 53 | 54 | r1b_dither(&img2,R1B_DTHR_ORD); 55 | r1b_paste(&im,&img2,304,-100); 56 | 57 | r1b_snapshot("examples/out/colorcard.png",&im); 58 | 59 | r1b_lpr("Printer_USB_Thermal_Printer",&im); 60 | } -------------------------------------------------------------------------------- /examples/utils/lsys.h: -------------------------------------------------------------------------------- 1 | 2 | 3 | typedef struct _lsys_char_t { 4 | char c; 5 | struct _lsys_char_t* prev; 6 | struct _lsys_char_t* next; 7 | } lsys_char_t; 8 | 9 | typedef struct{ 10 | lsys_char_t* head; 11 | lsys_char_t* tail; 12 | } lsys_str_t; 13 | 14 | typedef struct{ 15 | char lhs; 16 | char* rhs; 17 | } lsys_rule_t; 18 | 19 | lsys_str_t* lsys_make_str(char* s) { 20 | lsys_str_t* ss = (lsys_str_t*)malloc(sizeof(lsys_str_t)); 21 | ss->head = NULL; 22 | ss->tail = NULL; 23 | int sl = strlen(s); 24 | for (int i = 0; i < sl; i++){ 25 | lsys_char_t* cc = (lsys_char_t*) malloc(sizeof(lsys_char_t)); 26 | cc->c = s[i]; 27 | cc->prev = ss->tail; 28 | cc->next = NULL; 29 | if (ss->tail == NULL){ 30 | ss->head = cc; 31 | }else{ 32 | ss->tail->next = cc; 33 | } 34 | ss->tail = cc; 35 | } 36 | return ss; 37 | } 38 | 39 | void lsys_print_str(lsys_str_t* state){ 40 | lsys_char_t* it = state->head; 41 | while (it != NULL) { 42 | lsys_char_t*jt = it->next; 43 | printf("%c",it->c); 44 | it = jt; 45 | } 46 | printf("\n"); 47 | } 48 | 49 | void lsys_destroy_str(lsys_str_t* state){ 50 | lsys_char_t* it = state->head; 51 | while (it != NULL) { 52 | lsys_char_t*jt = it->next; 53 | free(it); 54 | it = jt; 55 | } 56 | free(state); 57 | } 58 | 59 | void lsys_step(lsys_str_t* state, lsys_rule_t* rules, int n_rules){ 60 | lsys_char_t* it = state->head; 61 | while (it != NULL){ 62 | lsys_char_t* jt = it->next; 63 | for (int i = 0; i < n_rules; i++ ){ 64 | if (it->c == rules[i].lhs) { 65 | lsys_str_t* ss = lsys_make_str(rules[i].rhs); 66 | 67 | if (it->prev != NULL){ 68 | it->prev->next = ss->head; 69 | }else{ 70 | state->head = ss->head; 71 | } 72 | if (it->next != NULL){ 73 | it->next->prev = ss->tail; 74 | }else{ 75 | state->tail = ss->tail; 76 | } 77 | ss->head->prev = it->prev; 78 | ss->tail->next = it->next; 79 | free(it); 80 | } 81 | } 82 | it = jt; 83 | } 84 | } -------------------------------------------------------------------------------- /examples/README.md: -------------------------------------------------------------------------------- 1 | # r1b Examples 2 | 3 | Here lives examples that help demonstrate r1b features. 4 | 5 | ## Table of Contents 6 | - [C99 examples](#c) 7 | - [Python examples](#python) 8 | - [Utils](#utils) 9 | 10 | 11 | ## C 12 | 13 | ### [bottles.c](bottles.c) 14 | 15 | Generate bottles of random shapes and patterns. 16 | 17 | ![](out/bottles.png) 18 | 19 | ------------------------ 20 | 21 | ### [prim.c](prim.c) 22 | 23 | Render builtin primitives 24 | 25 | ![](out/prim.png) 26 | 27 | ------------------------ 28 | 29 | 30 | ### [prim2.c](prim2.c) 31 | 32 | Render builtin primitives with random composition 33 | 34 | ![](out/prim2.png) 35 | 36 | 37 | ------------------------ 38 | 39 | ### [mesh.c](mesh.c) 40 | 41 | Render an OBJ file with different wireframes and shadings. 42 | 43 | ![](out/teapots.png) 44 | 45 | ------------------------ 46 | 47 | ### [filters.c](filters.c) 48 | 49 | Showcase various filter effects and CV algorithms 50 | 51 | ![](out/filters.png) 52 | 53 | ------------------------ 54 | 55 | ### [plants.c](plants.c) 56 | 57 | Draw some L-Systems with turtle graphics 58 | 59 | ![](out/plants.png) 60 | 61 | ------------------------ 62 | 63 | ### [fonts.c](fonts.c) 64 | 65 | Render/test all fonts included in the repo 66 | 67 | ![](out/fonts.png) 68 | 69 | ------------------------ 70 | 71 | 72 | ### [colorcard.c](colorcard.c) 73 | 74 | Showcase patterns and ditherings 75 | 76 | ![](out/colorcard.png) 77 | 78 | ------------------------ 79 | 80 | ### [upsample.c](upsample.c) 81 | 82 | Showcase pixel art upsample algorithms 83 | 84 | ![](out/upsample.png) 85 | 86 | ------------------------ 87 | 88 | 89 | ### [scroll.c](scroll.c) 90 | 91 | Render a long scroll of Chinese text 92 | 93 | ![](out/scroll.png) 94 | 95 | ------------------------ 96 | 97 | 98 | ## Python 99 | 100 | ### [mesh.py](py/mesh.py) 101 | 102 | Python version of mesh.c 103 | 104 | ![](out/teapots.png) 105 | 106 | ------------------------ 107 | 108 | 109 | ### [wiki.py](py/wiki.py) 110 | 111 | Pull wikipedia pages about historical figures and print the intro card. 112 | 113 | ![](out/wiki.png) 114 | 115 | 116 | ## Utils 117 | 118 | Handy utilities that are not officially part of r1b lives in the `examples/utils` folder. 119 | 120 | 121 | ### [utils/random.h](utils/random.h) 122 | 123 | Perlin noise and Gaussian randomness 124 | 125 | ### [utils/lsys.h](utils/lsys.h) 126 | 127 | Defining and stepping L-Systems 128 | 129 | ### [utils/turtle.h](utils/turtle.h) 130 | 131 | Turtle graphics with r1b 132 | -------------------------------------------------------------------------------- /examples/plants.c: -------------------------------------------------------------------------------- 1 | //gcc examples/plants.c 2 | #include "../r1b.h" 3 | #include "utils/lsys.h" 4 | #include "utils/turtle.h" 5 | 6 | 7 | void draw_lsys(turtle_t* tur, lsys_str_t* state, float d, float ang){ 8 | turtle_pendown(tur); 9 | lsys_char_t* it = state->head; 10 | while (it) { 11 | switch (it->c) { 12 | case 'X':break; 13 | case 'F': 14 | turtle_forward(tur,d); 15 | break; 16 | case '+': 17 | turtle_turn(tur,ang); 18 | break; 19 | case '-': 20 | turtle_turn(tur,-ang); 21 | break; 22 | case '[': 23 | turtle_push(tur); 24 | break; 25 | case ']': 26 | turtle_pop(tur); 27 | break; 28 | default: 29 | break; 30 | } 31 | it = it->next; 32 | } 33 | turtle_penup(tur); 34 | } 35 | 36 | 37 | void branch(r1b_im_t* im, float x, float y){ 38 | lsys_str_t* state = lsys_make_str("X"); 39 | lsys_rule_t rules[2]; 40 | rules[0].lhs = 'X'; rules[0].rhs = "F+[[X]-X]-F[-FX]+X"; 41 | rules[1].lhs = 'F'; rules[1].rhs = "FF"; 42 | 43 | for (int i=0; i < 6; i++){ 44 | lsys_step(state,rules,2); 45 | } 46 | turtle_t tur = turtle_init(im); 47 | turtle_goto(&tur,x,y); 48 | turtle_turn(&tur,-1.15); 49 | draw_lsys(&tur,state,4,0.4); 50 | lsys_destroy_str(state); 51 | turtle_destroy(&tur); 52 | } 53 | 54 | void weed(r1b_im_t* im, float x, float y){ 55 | lsys_str_t* state = lsys_make_str("F"); 56 | lsys_rule_t rules[3]; 57 | rules[0].lhs = 'X'; rules[0].rhs = "+FY"; 58 | rules[1].lhs = 'Y'; rules[1].rhs = "-FX"; 59 | rules[2].lhs = 'F'; rules[2].rhs = "FF-[XY]+[XY]"; 60 | 61 | for (int i=0; i < 6; i++){ 62 | lsys_step(state,rules,3); 63 | } 64 | turtle_t tur = turtle_init(im); 65 | turtle_goto(&tur,x,y); 66 | turtle_turn(&tur,-1.57); 67 | draw_lsys(&tur,state,6,0.4); 68 | lsys_destroy_str(state); 69 | turtle_destroy(&tur); 70 | } 71 | 72 | void bush(r1b_im_t* im, float x, float y){ 73 | lsys_str_t* state = lsys_make_str("F"); 74 | lsys_rule_t rules[1]; 75 | rules[0].lhs = 'F'; rules[0].rhs = "FF+[+F-F-F]-[-F+F+F]"; 76 | 77 | for (int i=0; i < 4; i++){ 78 | lsys_step(state,rules,1); 79 | } 80 | turtle_t tur = turtle_init(im); 81 | turtle_goto(&tur,x,y); 82 | turtle_turn(&tur,-1.57); 83 | draw_lsys(&tur,state,10,0.4); 84 | lsys_destroy_str(state); 85 | turtle_destroy(&tur); 86 | } 87 | 88 | int main(){ 89 | 90 | r1b_im_t im = r1b_zeros(384, 768*3); 91 | 92 | bush(&im,125,768); 93 | r1b_text(&im, L"Bush", 20, 20, R1B_FONT_FG8X12, 1, R1B_BLIT_SET, 1); 94 | 95 | weed(&im,192,768*2); 96 | r1b_text(&im, L"Weed", 20, 768+20, R1B_FONT_FG8X12, 1, R1B_BLIT_SET, 1); 97 | 98 | branch(&im,40,768*3); 99 | r1b_text(&im, L"Branch", 20, 768*2+20, R1B_FONT_FG8X12, 1, R1B_BLIT_SET, 1); 100 | 101 | r1b_snapshot("examples/out/plants.png", &im); 102 | 103 | // r1b_lpr("Printer_USB_Thermal_Printer",&im); 104 | 105 | r1b_free(&im); 106 | r1b_cleanup(); 107 | } -------------------------------------------------------------------------------- /examples/py/wiki.py: -------------------------------------------------------------------------------- 1 | import sys; sys.path.append("../../swig") 2 | import os 3 | import re 4 | import r1b 5 | 6 | # person = "Pythagoras" 7 | # person = "Socrates" 8 | person = "Plato" 9 | # person = "Aristotle" 10 | 11 | 12 | os.system("curl https://en.wikipedia.org/wiki/"+person+" > tmp.html") 13 | html = open("tmp.html",'r').read().replace("\n",""); 14 | os.system("rm tmp.html") 15 | 16 | html = re.sub(r'&#.+?;',' ',html); 17 | 18 | vcard = re.findall(r'(.*?)',r) 31 | items = " ".join([re.sub(r'<.*?>',r' ',x) for x in items]) 32 | items = re.sub(r' +',' ',items); 33 | 34 | imgs = re.findall(r'.+?

',html)[0] 42 | first = re.sub(r'<.*?>',r'',first) 43 | 44 | card.append(["",first,[]]) 45 | 46 | fonth = r1b.load_font_hex("../../fonts/tecate/32/spleen-16x32.hex",32,0,65535,r1b.FLAG_SORTED); 47 | fontb = r1b.load_font_hex("../../fonts/tecate/16/spleen-8x16.hex",16,0,65535,r1b.FLAG_SORTED); 48 | fontr = r1b.load_font_hex("../../fonts/unifont.hex",16,0,65535,r1b.FLAG_SORTED); 49 | 50 | im = r1b.zeros(384,2000); 51 | 52 | def is_ascii(s): 53 | return sum([ord(x)>=256 for x in s]) == 0 54 | 55 | def text(im,s,x,y,f,v,m,h): 56 | if is_ascii(s): 57 | r1b.text_ascii(im,s,x,y,f,v,m,h); 58 | else: 59 | # if (len(s)<4): 60 | # s += " " 61 | r1b.text_utf8(im,s,x,y,f,v,m,h); 62 | 63 | y = 0; 64 | x = 0; 65 | for i in range(len(card)): 66 | # print(card[i]) 67 | if i == 0: 68 | text(im,card[i][0],4,y,fonth,1,r1b.BLIT_SET,0); 69 | y+=32 70 | continue; 71 | 72 | if len(card[i][2]): 73 | url = card[i][2][0] 74 | fmt = url.split(".")[-1] 75 | os.system("curl "+url+" > tmp."+fmt) 76 | pic = r1b.read("tmp."+fmt) 77 | os.system("rm tmp."+fmt) 78 | 79 | su = 0 80 | for k in range(pic.h): 81 | for l in range(pic.w): 82 | su += 1.0-r1b.get(pic,l,k,r1b.BRDR_ZERO) 83 | if su != 0: 84 | 85 | r1b.resample(pic,368,r1b.INFER,r1b.SMPL_BILINEAR) 86 | r1b.normalize(pic,-0.2,0.8) 87 | r1b.dither(pic,r1b.DTHR_FS) 88 | r1b.paste(im,pic,8,y) 89 | y+=pic.h 90 | 91 | text(im,card[i][0],4,y,fontb,1,r1b.BLIT_SET,0); 92 | x = len(card[i][0])*8+8 93 | 94 | words = card[i][1].split(" ") 95 | for w in words: 96 | if x+8*len(w) > 380: 97 | x = 4 98 | y += 16 99 | # print(w) 100 | text(im,w,x,y-2,fontr,1,r1b.BLIT_SET,0) 101 | x += 8*len(w)+8 102 | 103 | y+=16 104 | if i == len(card)-2: 105 | r1b.lines(im,[[0.5,2],[382,2],[382,y],[0.5,y]],1,1,r1b.BLIT_SET); 106 | y += 16 107 | im.h = y 108 | 109 | r1b.snapshot("../out/wiki.png",im) 110 | 111 | # r1b.lpr("Printer_USB_Thermal_Printer",im); 112 | 113 | r1b.destroy_font(fonth) 114 | r1b.destroy_font(fontb) 115 | r1b.destroy_font(fontr) 116 | r1b.cleanup() 117 | 118 | 119 | -------------------------------------------------------------------------------- /fonts/tecate/20/neep-pre-ampersand-10x20.hex: -------------------------------------------------------------------------------- 1 | 0000:00007F807F807F807F807F807F807F807F807F807F807F807F807F807F807F807F807F807F800000 2 | 0001:00000000000000000000000004000E001F003F807FC03F801F000E00040000000000000000000000 3 | 0002:00005540AA805540AA805540AA805540AA805540AA805540AA805540AA805540AA805540AA805540 4 | 0003:0000000000006600660066007E0066006600660000001F8006000600060006000600060000000000 5 | 0004:0000000000007E00600060007C0060006000600000001F80180018001F0018001800180000000000 6 | 0005:0000000000003C00660060006000600066003C0000001F00198019801F001E001B00198000000000 7 | 0006:0000000000006000600060006000600060007E0000001F80180018001F0018001800180000000000 8 | 0007:0000000000001E003300330033001E00000000000000000000000000000000000000000000000000 9 | 0008:00000000000000000000000000000C000C000C007F800C000C000C0000007F800000000000000000 10 | 0009:0000000000004600660076007E006E006600620000001800180018001800180018001F8000000000 11 | 000A:00000000000066006600660024003C001800180000001F8006000600060006000600060000000000 12 | 000B:0C000C000C000C000C000C000C000C000C00FC000000000000000000000000000000000000000000 13 | 000C:000000000000000000000000000000000000FC000C000C000C000C000C000C000C000C000C000C00 14 | 000D:0000000000000000000000000000000000000FC00C000C000C000C000C000C000C000C000C000C00 15 | 000E:0C000C000C000C000C000C000C000C000C000FC00000000000000000000000000000000000000000 16 | 000F:0C000C000C000C000C000C000C000C000C00FFC00C000C000C000C000C000C000C000C000C000C00 17 | 0010:0000FFC0000000000000000000000000000000000000000000000000000000000000000000000000 18 | 0011:00000000000000000000FFC000000000000000000000000000000000000000000000000000000000 19 | 0012:000000000000000000000000000000000000FFC00000000000000000000000000000000000000000 20 | 0013:0000000000000000000000000000000000000000000000000000FFC0000000000000000000000000 21 | 0014:00000000000000000000000000000000000000000000000000000000000000000000FFC000000000 22 | 0015:0C000C000C000C000C000C000C000C000C000FC00C000C000C000C000C000C000C000C000C000C00 23 | 0016:0C000C000C000C000C000C000C000C000C00FC000C000C000C000C000C000C000C000C000C000C00 24 | 0017:0C000C000C000C000C000C000C000C000C00FFC00000000000000000000000000000000000000000 25 | 0018:000000000000000000000000000000000000FFC00C000C000C000C000C000C000C000C000C000C00 26 | 0019:0C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C00 27 | 001A:000000000000000000000100030006000C001800300018000C0006000300010000003F8000000000 28 | 001B:000000000000000000002000300018000C000600030006000C0018003000200000007F0000000000 29 | 001C:000000000000000000000000000000007F80B3003300330033003300330031800000000000000000 30 | 001D:000000000000000000000000018003007F8006000C0018007F803000600000000000000000000000 31 | 001E:0000000000001E00330030003000300030007C00300030003000300030007F800000000000000000 32 | 001F:0000000000000000000000000000000008001C001C00080000000000000000000000000000000000 33 | 0020:00000000000000000000000000000000000000000000000000000000000000000000000000000000 34 | 0021:0000000000000C000C000C000C000C000C000C000C000C0000000C000C000C000000000000000000 35 | 0022:00000000330033003300330033000000000000000000000000000000000000000000000000000000 36 | 0023:00000000000000001200120012007F807F80120012007F807F801200120012000000000000000000 37 | 0024:000000000000080008003E006B00680038001C000E000B006B003E00080008000000000000000000 38 | 0025:0000000000003080798049007B00360004000C0008001B0037802480678043000000000000000000 -------------------------------------------------------------------------------- /fonts/tecate/20/neep-pre-ampersand-10x20-bold.hex: -------------------------------------------------------------------------------- 1 | 0000:00007F807F807F807F807F807F807F807F807F807F807F807F807F807F807F807F807F807F800000 2 | 0001:00000000000000000000000004000E001F003F807FC03F801F000E00040000000000000000000000 3 | 0002:00005540AA805540AA805540AA805540AA805540AA805540AA805540AA805540AA805540AA805540 4 | 0003:000000000000660066007E007E0066006600660000000FC00FC00300030003000300030000000000 5 | 0004:0000000000007E007E0060007C007C006000600000000FC00FC00C000F800F800C000C0000000000 6 | 0005:0000000000003C007E006600600066007E003C0000000F800FC00CC00F800F800DC00CC000000000 7 | 0006:000000000000600060006000600060007E007E0000000FC00FC00C000F800F800C000C0000000000 8 | 0007:0000000000001E003F00330033003F001E0000000000000000000000000000000000000000000000 9 | 0008:0000000000000000000000000E000E000E007FC07FC00E000E000E0000007FC07FC0000000000000 10 | 0009:0000000000006600760076007E007E006E00660000000C000C000C000C000C000FC00FC000000000 11 | 000A:0000000000006600660066003C003C001800180000000FC00FC00300030003000300030000000000 12 | 000B:1C001C001C001C001C001C001C001C001C00FC00FC00000000000000000000000000000000000000 13 | 000C:000000000000000000000000000000000000FC00FC001C001C001C001C001C001C001C001C001C00 14 | 000D:0000000000000000000000000000000000001FC01FC01C001C001C001C001C001C001C001C001C00 15 | 000E:1C001C001C001C001C001C001C001C001C001FC01FC0000000000000000000000000000000000000 16 | 000F:1C001C001C001C001C001C001C001C001C00FFC0FFC01C001C001C001C001C001C001C001C001C00 17 | 0010:0000FFC0FFC000000000000000000000000000000000000000000000000000000000000000000000 18 | 0011:00000000000000000000FFC0FFC00000000000000000000000000000000000000000000000000000 19 | 0012:000000000000000000000000000000000000FFC0FFC0000000000000000000000000000000000000 20 | 0013:0000000000000000000000000000000000000000000000000000FFC0FFC000000000000000000000 21 | 0014:00000000000000000000000000000000000000000000000000000000000000000000FFC0FFC00000 22 | 0015:1C001C001C001C001C001C001C001C001C001FC01FC01C001C001C001C001C001C001C001C001C00 23 | 0016:1C001C001C001C001C001C001C001C001C00FC00FC001C001C001C001C001C001C001C001C001C00 24 | 0017:1C001C001C001C001C001C001C001C001C00FFC0FFC0000000000000000000000000000000000000 25 | 0018:000000000000000000000000000000000000FFC0FFC01C001C001C001C001C001C001C001C001C00 26 | 0019:1C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C00 27 | 001A:00000000000000000000020007000E001C003800700038001C000E000700020000007F807F800000 28 | 001B:00000000000000000000100038001C000E000700038007000E001C003800100000007F807F800000 29 | 001C:000000000000000000000000000000007FC0FFC0BB803B803B803B803BC039C00000000000000000 30 | 001D:000000000000000000C001807FC07FC07FC006000C007FC07FC07FC0300060000000000000000000 31 | 001E:0000000000001F003F8039803800380038007E007E003800380038007FC07FC00000000000000000 32 | 001F:000000000000000000000000000000000C001E001E000C0000000000000000000000000000000000 33 | 0020:00000000000000000000000000000000000000000000000000000000000000000000000000000000 34 | 0021:0000000000000E000E000E000E000E000E000E000E000E0000000E000E000E000000000000000000 35 | 0022:000000003B803B803B803B803B800000000000000000000000000000000000000000000000000000 36 | 0023:00000000000000001B001B007FC07FC07FC01B001B007FC07FC07FC01B001B000000000000000000 37 | 0024:0000000000000C000C003F007F806D007C003F000F802D807F803F000C000C000000000000000000 38 | 0025:00000000000038C07DC06D807F803F0006000E000C001F803FC036C077C063800000000000000000 -------------------------------------------------------------------------------- /examples/py/mesh.py: -------------------------------------------------------------------------------- 1 | import os 2 | import sys; sys.path.append("../../swig") 3 | from math import sin,cos 4 | 5 | import r1b 6 | 7 | font = r1b.load_font_hex("../fonts/unifont.hex",16,0,65535,r1b.FLAG_SORTED); 8 | 9 | hstack = r1b.zeros(3000,384); 10 | 11 | mesh = r1b.load_obj("../assets/teapot.obj"); 12 | r1b.normalize_mesh(mesh); 13 | 14 | rotx = -0.2; 15 | movz = 4.2 16 | 17 | r1b.transform_mesh(mesh, [ 18 | 1, 0, 0, 0, 19 | 0,cos(rotx),-sin(rotx), 0, 20 | 0,sin(rotx), cos(rotx),movz, 21 | 0, 0, 0, 1, 22 | ]); 23 | 24 | r1b.compute_vertex_normals(mesh); 25 | 26 | 27 | im = r1b.zeros(500,384); 28 | depth = r1b.infs(500,384); 29 | r1b.render_mesh(im, depth, mesh, 1000, r1b.PTTN_EMPTY, None, 1, r1b.SHDR_FLAT, r1b.WIRE_FRONT); 30 | 31 | r1b.text_ascii(im,"WIREFRAME FRONT",10,10,font,1,r1b.BLIT_SET,0); 32 | 33 | r1b.blit(hstack,im,r1b.PTTN_SOLID,0,0,500,384,0,0,r1b.BRDR_WRAP,r1b.BLIT_SET); 34 | 35 | r1b.normalize(depth,0.0,5); 36 | r1b.dither(depth,r1b.DTHR_FS); 37 | r1b.snapshot("out/depth.png",depth); 38 | 39 | r1b.free(im); 40 | r1b.free(depth); 41 | 42 | 43 | im = r1b.zeros(500,384); 44 | depth = r1b.infs(500,384); 45 | r1b.render_mesh(im, depth, mesh, 1000, None, None, 1, r1b.SHDR_NONE, r1b.WIRE_ALL); 46 | 47 | r1b.text_ascii(im,"WIREFRAME ALL",10,10,font,1,r1b.BLIT_SET,1); 48 | 49 | r1b.blit(hstack,im,r1b.PTTN_SOLID,500,0,1000,384,0,0,r1b.BRDR_WRAP,r1b.BLIT_SET); 50 | 51 | r1b.free(im); 52 | r1b.free(depth); 53 | 54 | 55 | im = r1b.zeros(500,384); 56 | depth = r1b.infs(500,384); 57 | r1b.render_mesh(im, depth, mesh, 1000, r1b.PTTN_GRAY2, None, 1, r1b.SHDR_FLAT, r1b.WIRE_FRONT); 58 | 59 | r1b.text_ascii(im,"WIREFRAME SHADED",10,10,font,1,r1b.BLIT_SET,1); 60 | 61 | r1b.blit(hstack,im,r1b.PTTN_SOLID,1000,0,1500,384,0,0,r1b.BRDR_WRAP,r1b.BLIT_SET); 62 | 63 | r1b.free(im); 64 | r1b.free(depth); 65 | 66 | im = r1b.zeros(500,384); 67 | depth = r1b.infs(500,384); 68 | r1b.render_mesh(im, depth, mesh, 1000, r1b.PTTN_SOLID, None, 0, r1b.SHDR_FLAT, r1b.WIRE_FRONT); 69 | 70 | r1b.text_ascii(im,"WIREFRAME INVERTED",10,10,font,1,r1b.BLIT_SET,1); 71 | 72 | r1b.blit(hstack,im,r1b.PTTN_SOLID,1500,0,2000,384,0,0,r1b.BRDR_WRAP,r1b.BLIT_SET); 73 | 74 | r1b.free(im); 75 | r1b.free(depth); 76 | 77 | im = r1b.zeros(500,384); 78 | depth = r1b.infs(500,384); 79 | 80 | light = [0.3,0,0.3,0.1]; 81 | r1b.render_mesh(im, depth, mesh, 1000, None, light, 1, r1b.SHDR_NDOTLF, r1b.WIRE_NONE); 82 | r1b.dither(im,r1b.DTHR_FS); 83 | 84 | r1b.text_ascii(im,"LAMBERT DITHERED",10,10,font,1,r1b.BLIT_SET,1); 85 | 86 | r1b.blit(hstack,im,r1b.PTTN_SOLID,2000,0,2500,384,0,0,r1b.BRDR_WRAP,r1b.BLIT_SET); 87 | 88 | r1b.free(im); 89 | r1b.free(depth); 90 | 91 | im = r1b.zeros(500,384); 92 | depth = r1b.infs(500,384); 93 | 94 | light = [0.38,0,0.38,0.1]; 95 | r1b.render_mesh(im, depth, mesh, 1000, None, light, 1, r1b.SHDR_NDOTL, r1b.WIRE_FRONT); 96 | 97 | r1b.text_ascii(im,"LAMBERT QUANTIZED",10,10,font,1,r1b.BLIT_SET,1); 98 | 99 | r1b.blit(hstack,im,r1b.PTTN_SOLID,2500,0,3000,384,0,0,r1b.BRDR_WRAP,r1b.BLIT_SET); 100 | 101 | r1b.free(im); 102 | r1b.free(depth); 103 | 104 | r1b.snapshot("../out/teapots.png",hstack); 105 | 106 | r1b.transpose_flip(hstack); 107 | 108 | r1b.lpr("Printer_USB_Thermal_Printer",hstack); 109 | 110 | r1b.destroy_font(font) 111 | r1b.destroy_mesh(mesh); 112 | r1b.cleanup(); 113 | -------------------------------------------------------------------------------- /examples/bottles.c: -------------------------------------------------------------------------------- 1 | //gcc examples/bottles.c 2 | #include "../r1b.h" 3 | #include "utils/random.h" 4 | 5 | r1b_im_t* get_nth_pattern(n){ 6 | switch (n) { 7 | case 0: return R1B_PATTERN(SOLID); 8 | case 1: return R1B_PATTERN(GRAY5); 9 | case 2: return R1B_PATTERN(GRAY4); 10 | case 3: return R1B_PATTERN(GRAY3); 11 | case 4: return R1B_PATTERN(GRAY2); 12 | case 5: return R1B_PATTERN(GRAY1); 13 | case 6: return R1B_PATTERN(EMPTY); 14 | case 7: return R1B_PATTERN(GRID1); 15 | case 8: return R1B_PATTERN(GRID2); 16 | case 9: return R1B_PATTERN(DOTS1); 17 | case 10: return R1B_PATTERN(DOTS2); 18 | case 11: return R1B_PATTERN(DOTSR); 19 | case 12: return R1B_PATTERN(HRZL1); 20 | case 13: return R1B_PATTERN(HRZL2); 21 | case 14: return R1B_PATTERN(VRTL1); 22 | case 15: return R1B_PATTERN(VRTL2); 23 | case 16: return R1B_PATTERN(DGNLL); 24 | case 17: return R1B_PATTERN(DGNLR); 25 | case 18: return R1B_PATTERN(CROSS); 26 | case 19: return R1B_PATTERN(BRICK); 27 | case 20: return R1B_PATTERN(SCALE); 28 | case 21: return R1B_PATTERN(WAVES); 29 | case 22: return R1B_PATTERN(CHESS); 30 | case 23: return R1B_PATTERN(DMOND); 31 | } 32 | return NULL; 33 | } 34 | 35 | void draw_tree(r1b_im_t* im, float x, float y, float a, float aa, float d, int n){ 36 | if (d < 2) { 37 | return; 38 | } 39 | float x0=x+cos( a-aa)*d; 40 | float y0=y+sin( a-aa)*d; 41 | float x1=x+cos( a+aa)*d; 42 | float y1=y+sin( a+aa)*d; 43 | 44 | r1b_line(im,x,y,x0,y0,1,R1B_BLIT_SET); 45 | r1b_line(im,x,y,x1,y1,1,R1B_BLIT_SET); 46 | draw_tree(im,x0,y0,a-aa,aa,d*(0.2+0.8*(float)rand()/(float)RAND_MAX),n-1); 47 | draw_tree(im,x1,y1,a+aa,aa,d*(0.2+0.8*(float)rand()/(float)RAND_MAX),n-1); 48 | } 49 | 50 | void draw_bottle(r1b_im_t* im, float x, float y, float z){ 51 | int h = rand()%40+10; 52 | int w = rand()%100+50; 53 | float* X = (float*)alloca(h*2*sizeof(float)); 54 | float* Y = (float*)alloca(h*2*sizeof(float)); 55 | for (int i = 0; i < h; i++ ){ 56 | float yy = (float)i*5; 57 | float xx = noise(yy*0.01,0,z)*(float)(w); 58 | X[i] = x+xx; Y[i] = y-(float)h*5+yy; 59 | X[h*2-i-1] = x-xx; Y[h*2-i-1] = y-(float)h*5+yy; 60 | } 61 | 62 | r1b_polygon(im,X,Y,h*2,get_nth_pattern(rand()%21+3),R1B_BLIT_SET,R1B_POLY_CONCAVE); 63 | r1b_lines(im,X,Y,h*2,1,1,R1B_BLIT_SET); 64 | 65 | r1b_ellipse (im,x, Y[0], (X[0]-X[h*2-1])/2, 5, 0, R1B_PATTERN(EMPTY), R1B_BLIT_SET); 66 | r1b_line_ellipse(im,x, Y[0], (X[0]-X[h*2-1])/2, 5, 0, 32, 1, R1B_BLIT_SET); 67 | 68 | if (h > 40 && rand()%100>50) { 69 | draw_tree(im,x, Y[0]+5,-M_PI/2,0.3,20,5); 70 | } 71 | } 72 | 73 | int main() { 74 | // srand(0); 75 | // noiseSeed(0); 76 | 77 | r1b_im_t im = r1b_zeros(1200, 384); 78 | 79 | r1b_im_t tablecloth = r1b_zeros(32,32); 80 | r1b_set(&tablecloth,0,0,1,R1B_BLIT_SET); 81 | 82 | r1b_rect(&im,0,200,1200,384,&tablecloth,R1B_BLIT_SET); 83 | 84 | for (int i = 0; i < 20; i++ ){ 85 | draw_bottle(&im, 100+rand()%1000,300+i*2, i); 86 | } 87 | 88 | r1b_text(&im, L"Bottles", 20, 20, R1B_FONT_FG8X12, 1, R1B_BLIT_SET, 1); 89 | 90 | r1b_snapshot("examples/out/bottles.png", &im); 91 | 92 | r1b_transpose_flip(&im); 93 | 94 | r1b_lpr("Printer_USB_Thermal_Printer",&im); 95 | 96 | r1b_free(&im); 97 | r1b_free(&tablecloth); 98 | r1b_cleanup(); 99 | 100 | } -------------------------------------------------------------------------------- /fonts/tecate/15/neep-post-ampersand-08x15.hex: -------------------------------------------------------------------------------- 1 | 0027:00000C181020000000000000000000 2 | 0028:000204080810101010100808040200 3 | 0029:004020101008080808081010204000 4 | 002A:000000000024187E18240000000000 5 | 002B:000000000808087F08080800000000 6 | 002C:000000000000000000001830204000 7 | 002D:000000000000007E00000000000000 8 | 002E:000000000000000000001038100000 9 | 002F:000202040408081010202040400000 10 | 0030:0000182442424A5242422418000000 11 | 0031:000008182848080808080808000000 12 | 0032:00003C66420204081020407E000000 13 | 0033:00007E0204081C060242663C000000 14 | 0034:00000C14142424447E040404000000 15 | 0035:00007E40407C46020242663C000000 16 | 0036:00003C6642405C664242663C000000 17 | 0037:00007E020404080810102020000000 18 | 0038:00003C6642423C664242663C000000 19 | 0039:00003C664242663A0242663C000000 20 | 003A:000000001038100000001038100000 21 | 003B:000000001038100000001830204000 22 | 003C:000000040810204020100804000000 23 | 003D:0000000000007E00007E0000000000 24 | 003E:000000201008040204081020000000 25 | 003F:0000780C0408102020002020000000 26 | 0040:00001C2642464A4A4A46201C000000 27 | 0041:00003C664242427E42424242000000 28 | 0042:0000784C44447C464242467C000000 29 | 0043:00003C66424040404042663C000000 30 | 0044:000078444242424242424478000000 31 | 0045:00007E4040407C404040407E000000 32 | 0046:00007E4040407C4040404040000000 33 | 0047:00003C664240404E4242663C000000 34 | 0048:0000424242427E4242424242000000 35 | 0049:00007C10101010101010107C000000 36 | 004A:00001E02020202020242663C000000 37 | 004B:000042444850684844444242000000 38 | 004C:00004040404040404040407E000000 39 | 004D:000041636355554949414141000000 40 | 004E:000042626252524A4A464642000000 41 | 004F:00003C66424242424242663C000000 42 | 0050:00007C464242467C40404040000000 43 | 0051:00003C6642424242424A6E3C060000 44 | 0052:00007C464242467C50484442000000 45 | 0053:00003C664240300C0242663C000000 46 | 0054:00007F080808080808080808000000 47 | 0055:00004242424242424242663C000000 48 | 0056:000042424242424224241818000000 49 | 0057:000041414141494955552222000000 50 | 0058:000042422424181824244242000000 51 | 0059:000042424242663C08080808000000 52 | 005A:00007E02040408101020407E000000 53 | 005B:001E10101010101010101010101E00 54 | 005C:004040202010100808040402020000 55 | 005D:007808080808080808080808087800 56 | 005E:000018244200000000000000000000 57 | 005F:000000000000000000000000007E00 58 | 0060:000030180804000000000000000000 59 | 0061:00000000003C023E6242663A000000 60 | 0062:00004040405C66424242665C000000 61 | 0063:00000000003C62404040623C000000 62 | 0064:00000202023A66424242663A000000 63 | 0065:00000000003C66427E40623C000000 64 | 0066:00001C322020207C20202020000000 65 | 0067:00000000003A664242663A0242663C 66 | 0068:00004040405C664242424242000000 67 | 0069:000008080038080808080808000000 68 | 006A:00000404001C0404040404044C3800 69 | 006B:000040404044485070484442000000 70 | 006C:00002020202020202020301C000000 71 | 006D:000000000076494949494941000000 72 | 006E:00000000005C664242424242000000 73 | 006F:00000000003C66424242663C000000 74 | 0070:00000000005C664242665C40404040 75 | 0071:00000000003A664242663A02020202 76 | 0072:00000000005C624040404040000000 77 | 0073:00000000003C62403C02463C000000 78 | 0074:00000020207C20202020321C000000 79 | 0075:00000000004242424242663A000000 80 | 0076:000000000042424224241818000000 81 | 0077:000000000041414949495522000000 82 | 0078:000000000042241818182442000000 83 | 0079:000000000042424242663A0242663C 84 | 007A:00000000007E02040810207E000000 85 | 007B:000608080808083008080808080600 86 | 007C:001010101010101010101010100000 87 | 007D:006010101010100C10101010106000 88 | 007E:000000314946000000000000000000 89 | 007F:007E42424242424242424242427E00 -------------------------------------------------------------------------------- /fonts/tecate/15/neep-post-ampersand-08x15-bold.hex: -------------------------------------------------------------------------------- 1 | 0027:00001C383060000000000000000000 2 | 0028:00060C1818303030303018180C0600 3 | 0029:0030180C0C06060606060C0C183000 4 | 002A:0000000000361C7F1C360000000000 5 | 002B:00000000181818FFFF181818000000 6 | 002C:000000000000000000001C38306000 7 | 002D:000000000000007E7E000000000000 8 | 002E:00000000000000000000183C180000 9 | 002F:00030306060C0C1818303060600000 10 | 0030:00001C3E63636B6B63633E1C000000 11 | 0031:0000040C1C3C0C0C0C0C0C0C000000 12 | 0032:00003E7F6303060C18307F7F000000 13 | 0033:00007F7F060C1E1F03637F3E000000 14 | 0034:00000E1E1E3636667F7F0606000000 15 | 0035:00007F7F607E7F0303637F3E000000 16 | 0036:00003E7F63606E7F63637F3E000000 17 | 0037:00007F7F0306060C0C181830000000 18 | 0038:00003E7F63633E7F63637F3E000000 19 | 0039:00003E7F63637F3B03637F3E000000 20 | 003A:00000000183C18000000183C180000 21 | 003B:00000000183C180000001C38306000 22 | 003C:000000060C18306030180C06000000 23 | 003D:0000000000007E7E007E7E00000000 24 | 003E:0000006030180C060C183060000000 25 | 003F:00007C7E060C183030003030000000 26 | 0040:00001E3F61474F494F67301C000000 27 | 0041:00003E7F63637F7F63636363000000 28 | 0042:00007C7E66667E7F63637F7E000000 29 | 0043:00003E7F6360606060637F3E000000 30 | 0044:00007C7E6763636363677E7C000000 31 | 0045:00007F7F60607E7E60607F7F000000 32 | 0046:00007F7F60607E7E60606060000000 33 | 0047:00003E7F63606F6F63637F3F000000 34 | 0048:0000636363637F7F63636363000000 35 | 0049:00007E7E1818181818187E7E000000 36 | 004A:00001F1F0303030303637F3E000000 37 | 004B:000063666C787C6C66666363000000 38 | 004C:000060606060606060607F7F000000 39 | 004D:0000636377777F6B6B636363000000 40 | 004E:0000636373737B6F67676363000000 41 | 004F:00003E7F6363636363637F3E000000 42 | 0050:00007E7F63637F7E60606060000000 43 | 0051:00003E7F6363636363637F3E1C0F07 44 | 0052:00007E7F63637E7C66666363000000 45 | 0053:00003E7F63703C1E07637F3E000000 46 | 0054:0000FFFF1818181818181818000000 47 | 0055:000063636363636363637F3E000000 48 | 0056:000063636363636336361C1C000000 49 | 0057:000063636363636B6B7F7722000000 50 | 0058:0000636336361C1C36366363000000 51 | 0059:0000636363637F3E0C0C0C0C000000 52 | 005A:00007F7F03060C1830607F7F000000 53 | 005B:003E3E3030303030303030303E3E00 54 | 005C:006060303018180C0C060603030000 55 | 005D:003E3E0606060606060606063E3E00 56 | 005E:0000183C6642000000000000000000 57 | 005F:0000000000000000000000007F7F00 58 | 0060:0000381C0C06000000000000000000 59 | 0061:00000000003E3F033F637F3B000000 60 | 0062:00006060606E7F6363637F6E000000 61 | 0063:00000000003E7F6360637F3E000000 62 | 0064:00000303033B7F6363637F3B000000 63 | 0065:00000000003E7F637F607E3E000000 64 | 0066:00001E3F33307E7E30303030000000 65 | 0067:00000000003B7F63637F3B03637F3E 66 | 0068:00006060606E7F6363636363000000 67 | 0069:00000C0C003C3C0C0C0C0C0C000000 68 | 006A:00000606001E1E06060606667E3C00 69 | 006B:0000606060666C78786C6663000000 70 | 006C:000018181818181818181E0E000000 71 | 006D:0000000000767F6B6B6B6B63000000 72 | 006E:00000000006E7F6363636363000000 73 | 006F:00000000003E7F6363637F3E000000 74 | 0070:00000000006E7F63637F6E60606060 75 | 0071:00000000003B7F63637F3B03030303 76 | 0072:00000000006E7F6360606060000000 77 | 0073:00000000003F7F603E037F7E000000 78 | 0074:00000030307E7E3030333F1E000000 79 | 0075:000000000063636363637F3B000000 80 | 0076:000000000063636336361C1C000000 81 | 0077:000000000063636B6B7F7722000000 82 | 0078:000000000063361C1C1C3663000000 83 | 0079:0000000000636363637F3B03637F3E 84 | 007A:00000000007F7F061C307F7F000000 85 | 007B:000E1E1818183870381818181E0E00 86 | 007C:001818181818181818181818180000 87 | 007D:0070781818181C0E1C181818787000 88 | 007E:000000337B6F660000000000000000 89 | 007F:007E42424242424242424242427E00 -------------------------------------------------------------------------------- /examples/mesh.c: -------------------------------------------------------------------------------- 1 | //gcc examples/mesh.c 2 | #include "../r1b.h" 3 | 4 | int main(){ 5 | r1b_font_t font = r1b_load_font_hex("fonts/unifont.hex",16,0,INT_MAX,R1B_FLAG_SORTED); 6 | 7 | r1b_im_t hstack = r1b_zeros(3000,384); 8 | 9 | r1b_mesh_t mesh = r1b_load_obj("examples/assets/teapot.obj"); 10 | r1b_normalize_mesh(&mesh); 11 | 12 | float rotx[] = R1B_MAT_ROTX(-0.2); 13 | float roty[] = R1B_MAT_ROTY(0); 14 | float rotz[] = R1B_MAT_ROTZ(0); 15 | 16 | float rotxy[]= R1B_MAT_MULT(roty,rotx); 17 | float rot[] = R1B_MAT_MULT(rotz,rotxy); 18 | float trl[] = R1B_MAT_TRSL(0,0,4.2); 19 | float tfm[] = R1B_MAT_MULT(trl,rot); 20 | 21 | r1b_transform_mesh(&mesh, tfm); 22 | 23 | r1b_compute_vertex_normals(&mesh); 24 | 25 | { 26 | r1b_im_t im = r1b_zeros(500,384); 27 | r1b_im_t depth = r1b_infs(500,384); 28 | r1b_render_mesh(&im, &depth, &mesh, 1000, R1B_PATTERN(EMPTY), NULL, 1, R1B_SHDR_FLAT, R1B_WIRE_FRONT); 29 | 30 | r1b_text(&im,L"WIREFRAME FRONT",10,10,&font,1,R1B_BLIT_SET,0); 31 | 32 | r1b_blit(&hstack,&im,R1B_PATTERN(SOLID),0,0,500,384,0,0,R1B_BRDR_WRAP,R1B_BLIT_SET); 33 | 34 | { 35 | r1b_normalize(&depth,0.0,5); 36 | r1b_dither(&depth,R1B_DTHR_FS); 37 | r1b_snapshot("examples/out/depth.png",&depth); 38 | } 39 | 40 | r1b_free(&im); 41 | r1b_free(&depth); 42 | } { 43 | r1b_im_t im = r1b_zeros(500,384); 44 | r1b_im_t depth = r1b_infs(500,384); 45 | r1b_render_mesh(&im, &depth, &mesh, 1000, NULL, NULL, 1, R1B_SHDR_NONE, R1B_WIRE_ALL); 46 | 47 | r1b_text(&im,L"WIREFRAME ALL",10,10,&font,1,R1B_BLIT_SET,1); 48 | 49 | r1b_blit(&hstack,&im,R1B_PATTERN(SOLID),500,0,1000,384,0,0,R1B_BRDR_WRAP,R1B_BLIT_SET); 50 | 51 | r1b_free(&im); 52 | r1b_free(&depth); 53 | } { 54 | r1b_im_t im = r1b_zeros(500,384); 55 | r1b_im_t depth = r1b_infs(500,384); 56 | r1b_render_mesh(&im, &depth, &mesh, 1000, R1B_PATTERN(GRAY2), NULL, 1, R1B_SHDR_FLAT, R1B_WIRE_FRONT); 57 | 58 | r1b_text(&im,L"WIREFRAME SHADED",10,10,&font,1,R1B_BLIT_SET,1); 59 | 60 | r1b_blit(&hstack,&im,R1B_PATTERN(SOLID),1000,0,1500,384,0,0,R1B_BRDR_WRAP,R1B_BLIT_SET); 61 | 62 | r1b_free(&im); 63 | r1b_free(&depth); 64 | } { 65 | r1b_im_t im = r1b_zeros(500,384); 66 | r1b_im_t depth = r1b_infs(500,384); 67 | r1b_render_mesh(&im, &depth, &mesh, 1000, R1B_PATTERN(SOLID), NULL, 0, R1B_SHDR_FLAT, R1B_WIRE_FRONT); 68 | 69 | r1b_text(&im,L"WIREFRAME INVERTED",10,10,&font,1,R1B_BLIT_SET,1); 70 | 71 | r1b_blit(&hstack,&im,R1B_PATTERN(SOLID),1500,0,2000,384,0,0,R1B_BRDR_WRAP,R1B_BLIT_SET); 72 | 73 | r1b_free(&im); 74 | r1b_free(&depth); 75 | } { 76 | r1b_im_t im = r1b_zeros(500,384); 77 | r1b_im_t depth = r1b_infs(500,384); 78 | 79 | float light[4] = {0.3,0,0.3,0.1}; 80 | r1b_render_mesh(&im, &depth, &mesh, 1000, NULL, light, 1, R1B_SHDR_NDOTLF, R1B_WIRE_NONE); 81 | r1b_dither(&im,R1B_DTHR_FS); 82 | 83 | r1b_text(&im,L"LAMBERT DITHERED",10,10,&font,1,R1B_BLIT_SET,1); 84 | 85 | r1b_blit(&hstack,&im,R1B_PATTERN(SOLID),2000,0,2500,384,0,0,R1B_BRDR_WRAP,R1B_BLIT_SET); 86 | 87 | r1b_free(&im); 88 | r1b_free(&depth); 89 | } { 90 | r1b_im_t im = r1b_zeros(500,384); 91 | r1b_im_t depth = r1b_infs(500,384); 92 | 93 | float light[4] = {0.38,0,0.38,0.1}; 94 | r1b_render_mesh(&im, &depth, &mesh, 1000, NULL, light, 1, R1B_SHDR_NDOTL, R1B_WIRE_FRONT); 95 | 96 | r1b_text(&im,L"LAMBERT QUANTIZED",10,10,&font,1,R1B_BLIT_SET,1); 97 | 98 | r1b_blit(&hstack,&im,R1B_PATTERN(SOLID),2500,0,3000,384,0,0,R1B_BRDR_WRAP,R1B_BLIT_SET); 99 | 100 | r1b_free(&im); 101 | r1b_free(&depth); 102 | } 103 | 104 | r1b_snapshot("examples/out/teapots.png",&hstack); 105 | 106 | r1b_transpose_flip(&hstack); 107 | 108 | // r1b_lpr("Printer_USB_Thermal_Printer",&hstack); 109 | 110 | r1b_destroy_mesh(&mesh); 111 | r1b_cleanup(); 112 | } 113 | -------------------------------------------------------------------------------- /fonts/tecate/24/neep-pre-ampersand-12x24.hex: -------------------------------------------------------------------------------- 1 | 0000:00007FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE00000 2 | 0001:00000000000000000000000006000F001F803FC07FE07FE03FC01F800F00060000000000000000000000000000000000 3 | 0002:00005550AAA05550AAA05550AAA05550AAA05550AAA05550AAA05550AAA05550AAA05550AAA05550AAA05550AAA05550 4 | 0003:0000000000006300630063007F007F0063006300630000000FC00FC00300030003000300030003000000000000000000 5 | 0004:0000000000007E007E0060007C007C0060006000600000000FC00FC00C000F800F800C000C000C000000000000000000 6 | 0005:0000000000001E003F0073006000600073003F001E0000000F800FC00CC00FC00F800D800CC00CC00000000000000000 7 | 0006:0000000000006000600060006000600060007E007E0000000FC00FC00C000F800F800C000C000C000000000000000000 8 | 0007:0000000000000E001F003180318031801F000E0000000000000000000000000000000000000000000000000000000000 9 | 0008:0000000000000000000006000600060006007FE07FE0060006000600060000007FE07FE0000000000000000000000000 10 | 0009:000000000000630073007B006B006F0067006700630000000C000C000C000C000C000C000FC00FC00000000000000000 11 | 000A:0000000000006300630063006300360036001C00080000000FC00FC00300030003000300030003000000000000000000 12 | 000B:06000600060006000600060006000600060006000600FE00FE0000000000000000000000000000000000000000000000 13 | 000C:00000000000000000000000000000000000000000000FE00FE0006000600060006000600060006000600060006000600 14 | 000D:0000000000000000000000000000000000000000000007F007F006000600060006000600060006000600060006000600 15 | 000E:0600060006000600060006000600060006000600060007F007F000000000000000000000000000000000000000000000 16 | 000F:06000600060006000600060006000600060006000600FFF0FFF006000600060006000600060006000600060006000600 17 | 0010:0000FFF0FFF0000000000000000000000000000000000000000000000000000000000000000000000000000000000000 18 | 0011:000000000000000000000000FFF0FFF00000000000000000000000000000000000000000000000000000000000000000 19 | 0012:00000000000000000000000000000000000000000000FFF0FFF000000000000000000000000000000000000000000000 20 | 0013:0000000000000000000000000000000000000000000000000000000000000000FFF0FFF0000000000000000000000000 21 | 0014:000000000000000000000000000000000000000000000000000000000000000000000000000000000000FFF0FFF00000 22 | 0015:0600060006000600060006000600060006000600060007F007F006000600060006000600060006000600060006000600 23 | 0016:06000600060006000600060006000600060006000600FE00FE0006000600060006000600060006000600060006000600 24 | 0017:06000600060006000600060006000600060006000600FFF0FFF000000000000000000000000000000000000000000000 25 | 0018:00000000000000000000000000000000000000000000FFF0FFF006000600060006000600060006000600060006000600 26 | 0019:060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600 27 | 001A:000000000000000000000000004001C007001C0030001C00070001C0004000003FE03FE0000000000000000000000000 28 | 001B:000000000000000000000000200038000E00038000C003800E003800200000007FC07FC0000000000000000000000000 29 | 001C:000000000000000000000000000000003FE07FE0D98019801980198019801980198019C018C000000000000000000000 30 | 001D:000000000000000000000000006000C07FC07FC0030006000C007FC07FC0300060004000000000000000000000000000 31 | 001E:00000000000007000F801DC018801800180018007F007F00180018001800180018007FE07FE000000000000000000000 32 | 001F:00000000000000000000000000000000000006000F000F00060000000000000000000000000000000000000000000000 33 | 0020:000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 34 | 0021:000000000000060006000600060006000600060006000600060006000000000006000600060000000000000000000000 35 | 0022:000000001980198019801980198019800000000000000000000000000000000000000000000000000000000000000000 36 | 0023:00000000000019801980198019807FE07FE019801980198019807FE07FE0198019801980198000000000000000000000 37 | 0024:000000000000060006001F803FC076E0664076003F801FC006E0266076E03FC01F800600060000000000000000000000 38 | 0025:0000000000003C607E6066C066C07F803F000300060006000C000FC01FE03660366067E063C000000000000000000000 -------------------------------------------------------------------------------- /fonts/tecate/24/neep-pre-ampersand-12x24-bold.hex: -------------------------------------------------------------------------------- 1 | 0000:00007FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE07FE00000 2 | 0001:00000000000000000000000006000F001F803FC07FE07FE03FC01F800F00060000000000000000000000000000000000 3 | 0002:00005550AAA05550AAA05550AAA05550AAA05550AAA05550AAA05550AAA05550AAA05550AAA05550AAA05550AAA05550 4 | 0003:0000000000007380738073807F807F8073807380738000000FE00FE00380038003800380038003800000000000000000 5 | 0004:0000000000007F007F0070007E007E0070007000700000000FE00FE00E000FC00FC00E000E000E000000000000000000 6 | 0005:0000000000001F003F8079807000700079803F801F0000001FC01FE01CE01FE01FC01DC01CE01CE00000000000000000 7 | 0006:0000000000007000700070007000700070007F007F0000000FE00FE00E000FC00FC00E000E000E000000000000000000 8 | 0007:0000000000000F001F803DC038C03DC01F800F0000000000000000000000000000000000000000000000000000000000 9 | 0008:0000000000000000000007000700070007007FF07FF07FF0070007000700070000007FF07FF07FF00000000000000000 10 | 0009:00000000000073807B807B807F807F8077807780738000000E000E000E000E000E000E000FE00FE00000000000000000 11 | 000A:00000000000073807380738073803F003F001E000C0000000FE00FE00380038003800380038003800000000000000000 12 | 000B:0E000E000E000E000E000E000E000E000E000E000E00FE00FE00FE000000000000000000000000000000000000000000 13 | 000C:00000000000000000000000000000000000000000000FE00FE00FE000E000E000E000E000E000E000E000E000E000E00 14 | 000D:000000000000000000000000000000000000000000000FF00FF00FF00E000E000E000E000E000E000E000E000E000E00 15 | 000E:0E000E000E000E000E000E000E000E000E000E000E000FF00FF00FF00000000000000000000000000000000000000000 16 | 000F:0E000E000E000E000E000E000E000E000E000E000E00FFF0FFF0FFF00E000E000E000E000E000E000E000E000E000E00 17 | 0010:0000FFF0FFF0FFF000000000000000000000000000000000000000000000000000000000000000000000000000000000 18 | 0011:000000000000000000000000FFF0FFF0FFF0000000000000000000000000000000000000000000000000000000000000 19 | 0012:00000000000000000000000000000000000000000000FFF0FFF0FFF00000000000000000000000000000000000000000 20 | 0013:0000000000000000000000000000000000000000000000000000000000000000FFF0FFF0FFF000000000000000000000 21 | 0014:000000000000000000000000000000000000000000000000000000000000000000000000000000000000FFF0FFF0FFF0 22 | 0015:0E000E000E000E000E000E000E000E000E000E000E000FF00FF00FF00E000E000E000E000E000E000E000E000E000E00 23 | 0016:0E000E000E000E000E000E000E000E000E000E000E00FE00FE00FE000E000E000E000E000E000E000E000E000E000E00 24 | 0017:0E000E000E000E000E000E000E000E000E000E000E00FFF0FFF0FFF00000000000000000000000000000000000000000 25 | 0018:00000000000000000000000000000000000000000000FFF0FFF0FFF00E000E000E000E000E000E000E000E000E000E00 26 | 0019:0E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E00 27 | 001A:000000000000000000000000006001E007C01F003C001F0007C001E0006000003FF03FF03FF000000000000000000000 28 | 001B:00000000000000000000000030003C001F0007C001E007C01F003C00300000007FE07FE07FE000000000000000000000 29 | 001C:000000000000000000000000000000003FF07FF0FFF0DDC01DC01DC01DC01DC01DE01DE01CE000000000000000000000 30 | 001D:000000000000000000000020006000E07FE07FE07FE007000E007FE07FE07FE070006000400000000000000000000000 31 | 001E:00000000000007800FC01FE01CC01C001C001C007F807F807F801C001C001C007FF07FF07FF000000000000000000000 32 | 001F:00000000000000000000000000000000000007000F800F80070000000000000000000000000000000000000000000000 33 | 0020:000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 34 | 0021:000000000000070007000700070007000700070007000700070007000000000007000700070000000000000000000000 35 | 0022:0000000039C039C039C039C039C039C00000000000000000000000000000000000000000000000000000000000000000 36 | 0023:0000000000001DC01DC01DC01DC07FF07FF07FF01DC01DC07FF07FF07FF01DC01DC01DC01DC000000000000000000000 37 | 0024:000000000000060006001F803FC07FE076C07E003F801FC007E036E07FE03FC01F800600060000000000000000000000 38 | 0025:0000000000003C707E7076E076E07FC03F800380070007000E000FE01FF03BB03BB073F071E000000000000000000000 -------------------------------------------------------------------------------- /examples/filters.c: -------------------------------------------------------------------------------- 1 | //gcc examples/filters.c 2 | #include "../r1b.h" 3 | 4 | int main(){ 5 | r1b_font_t font = r1b_load_font_hex("fonts/unifont.hex",16,0,INT_MAX,R1B_FLAG_SORTED); 6 | 7 | r1b_im_t canvas = r1b_zeros(384,1290); 8 | 9 | { 10 | r1b_im_t src = r1b_read("examples/assets/david.png"); 11 | 12 | r1b_im_t dst1 = r1b_copy_of(&src); 13 | r1b_im_t dst2 = r1b_copy_of(&src); 14 | r1b_im_t dst3 = r1b_copy_of(&src); 15 | r1b_im_t dst4 = r1b_copy_of(&src); 16 | r1b_im_t dst5 = r1b_copy_of(&src); 17 | r1b_im_t dst6 = r1b_copy_of(&src); 18 | 19 | 20 | r1b_normalize(&dst1,0,0.8); 21 | 22 | r1b_dither(&dst1,R1B_DTHR_ORD); 23 | 24 | r1b_canny( &dst2,R1B_INFER,R1B_INFER,R1B_INFER); 25 | 26 | r1b_sobel(&dst3,NULL); 27 | 28 | r1b_dither(&dst3,R1B_DTHR_FS); 29 | 30 | r1b_threshold(&dst4,R1B_INFER); 31 | 32 | r1b_blur(&dst5,1,R1B_BLUR_GAUSS); 33 | r1b_threshold_adaptive(&dst5,5,-0.08,R1B_BLUR_GAUSS); 34 | 35 | r1b_dither(&dst6,R1B_DTHR_FS); 36 | 37 | r1b_blit(&canvas,&dst2,R1B_PATTERN(SOLID),0,0,src.w,src.h*2,0,0,R1B_BRDR_WRAP,R1B_BLIT_OR); 38 | r1b_blit(&canvas,&dst1,R1B_PATTERN(SOLID),0,src.h,src.w,src.h*2,0,0,R1B_BRDR_WRAP,R1B_BLIT_OR); 39 | r1b_blit(&canvas,&dst3,R1B_PATTERN(SOLID),0,src.h*2,src.w,src.h*3,0,0,R1B_BRDR_WRAP,R1B_BLIT_OR); 40 | r1b_blit(&canvas,&dst4,R1B_PATTERN(CROSS),0,src.h*3,src.w,src.h*4,0,0,R1B_BRDR_WRAP,R1B_BLIT_OR); 41 | r1b_blit(&canvas,&dst5,R1B_PATTERN(SOLID),0,src.h*4,src.w,src.h*5,0,0,R1B_BRDR_WRAP,R1B_BLIT_OR); 42 | r1b_blit(&canvas,&dst6,R1B_PATTERN(SOLID),0,src.h*5,src.w,src.h*6,0,0,R1B_BRDR_WRAP,R1B_BLIT_OR); 43 | 44 | r1b_free(&dst1); r1b_free(&dst2); r1b_free(&dst3); 45 | r1b_free(&dst4); r1b_free(&dst5); r1b_free(&dst6); 46 | r1b_free(&src); 47 | 48 | } 49 | 50 | { 51 | r1b_im_t src = r1b_zeros(204,215); 52 | r1b_text(&src,L"David is a masterpiece of\nRenaissance sculpture\ncreated in marble between\n1501 \ 53 | and 1504 by the\nItalian artist\nMichelangelo. 大衛像是文\n藝復興時代米开朗基罗的杰\n作。於一五零壹年至一五零\n肆年雕成。(Wikipedia)",0,0,&font,1,R1B_BLIT_SET,0); 54 | 55 | r1b_im_t img = r1b_read("examples/assets/upsample_test.png"); 56 | r1b_threshold(&img,R1B_INFER); 57 | r1b_blit(&src,&img,R1B_PATTERN(SOLID),0,150,200,150+img.h,0,0,R1B_BRDR_WRAP,R1B_BLIT_OR); 58 | 59 | 60 | r1b_im_t dst1 = r1b_copy_of(&src); 61 | r1b_bedstead(&dst1,2); 62 | 63 | 64 | r1b_im_t dst2 = r1b_copy_of(&dst1); 65 | r1b_im_t kern = r1b_make_kernel(3,R1B_KERN_ELLIPSE); 66 | r1b_dilate(&dst2,&kern); 67 | 68 | r1b_sobel( &dst2, NULL); 69 | r1b_threshold(&dst2,0.5); 70 | 71 | 72 | r1b_im_t dst3 = r1b_copy_of(&dst1); 73 | r1b_blur(&dst3,5,R1B_BLUR_GAUSS); 74 | r1b_dither(&dst3,R1B_DTHR_FS); 75 | 76 | r1b_im_t dst4 = r1b_copy_of(&src); 77 | r1b_im_t kern2 = r1b_make_kernel(7,R1B_KERN_ELLIPSE); 78 | r1b_bedstead(&dst4,3); 79 | r1b_erode(&dst4,&kern2); 80 | 81 | 82 | r1b_blit(&canvas,&src, R1B_PATTERN(SOLID),180,0,src.w+180,src.h,0,0,R1B_BRDR_WRAP,R1B_BLIT_OR); 83 | 84 | r1b_blit(&canvas,&dst1,R1B_PATTERN(SOLID),180,src.h,src.w+180,src.h*2,0,0,R1B_BRDR_WRAP,R1B_BLIT_OR); 85 | r1b_blit(&canvas,&dst2,R1B_PATTERN(SOLID),180,src.h*2,src.w+180,src.h*3,0,215,R1B_BRDR_WRAP,R1B_BLIT_OR); 86 | r1b_blit(&canvas,&dst3,R1B_PATTERN(SOLID),180,src.h*3,src.w+180,src.h*4,0,430,R1B_BRDR_WRAP,R1B_BLIT_OR); 87 | r1b_blit(&canvas,&dst4,R1B_PATTERN(SOLID),180,src.h*4,src.w+180,src.h*5,200,1200,R1B_BRDR_WRAP,R1B_BLIT_OR); 88 | 89 | r1b_text_ascii(&canvas,"Top left to Bottom Right:\nCanny Edge\nOtsu Threshold\nCanny + Ordered dither\nBedstead Upscale 2X\nSobel + FS Dither\nDilate + Sobel + Thresh\nOtsu Thresh + Pattern fill\nGaussin Blur + FS Dither\nAdaptive threshold\nBedstead 8X + Erosion\nFloyd Steinberg Dither",180,1075,R1B_FONT_FG8X12,1,R1B_BLIT_SET,0); 90 | 91 | r1b_free(&dst1); r1b_free(&dst2); r1b_free(&dst3 ); 92 | r1b_free(&dst4); r1b_free(&kern); r1b_free(&kern2); 93 | r1b_free(&src); 94 | 95 | } 96 | 97 | r1b_snapshot("examples/out/filters.png",&canvas); 98 | 99 | r1b_lpr("Printer_USB_Thermal_Printer",&canvas); 100 | 101 | r1b_free(&canvas); 102 | r1b_destroy_font(&font); 103 | r1b_cleanup(); 104 | } -------------------------------------------------------------------------------- /fonts/tecate/7/bitocra7.hex: -------------------------------------------------------------------------------- 1 | 0000:1010101010F000 2 | 0001:00000000000000 3 | 0002:00000000000000 4 | 0003:00000000000000 5 | 0004:00000000000000 6 | 0005:00000000000000 7 | 0006:00000000000000 8 | 0007:00000000000000 9 | 0008:00000000000000 10 | 0009:00000000000000 11 | 000A:00000000000000 12 | 000B:00000000000000 13 | 000C:00000000000000 14 | 000D:00000000000000 15 | 000E:00000000000000 16 | 000F:00000000000000 17 | 0010:00000000000000 18 | 0011:00000000000000 19 | 0012:00000000000000 20 | 0013:00000000000000 21 | 0014:00000000000000 22 | 0015:00000000000000 23 | 0016:00000000000000 24 | 0017:00000000000000 25 | 0018:00000000000000 26 | 0019:00000000000000 27 | 001A:00000000000000 28 | 001B:00000000000000 29 | 001C:00000000000000 30 | 001D:00000000000000 31 | 001E:00000000000000 32 | 001F:00000000000000 33 | 0020:00000000000000 34 | 0021:00404040004000 35 | 0022:00A0A000000000 36 | 0023:00A0E0A0E0A000 37 | 0024:0040E0C020E040 38 | 0025:00802040802000 39 | 0026:00608050A05000 40 | 0027:00604000000000 41 | 0028:00204040404020 42 | 0029:00402020202040 43 | 002A:0040E040A00000 44 | 002B:000040E0400000 45 | 002C:00000000006020 46 | 002D:000000E0000000 47 | 002E:00000000004000 48 | 002F:00202040408080 49 | 0030:00E0A0A0A0E000 50 | 0031:00C0404040E000 51 | 0032:00E020E080E000 52 | 0033:00E0206020E000 53 | 0034:00A0A0E0202000 54 | 0035:00E080E020E000 55 | 0036:00C080E0A0E000 56 | 0037:00E02040404000 57 | 0038:006060E0A0E000 58 | 0039:00E0A0E0206000 59 | 003A:00000040004000 60 | 003B:00000040006020 61 | 003C:00204080402000 62 | 003D:0000E000E00000 63 | 003E:00804020408000 64 | 003F:00E02040400040 65 | 0040:00F09050D0F000 66 | 0041:0060A0A0E0A000 67 | 0042:00C0C0E0A0E000 68 | 0043:0060808080E000 69 | 0044:00C0A0A0A0C000 70 | 0045:00E080C080E000 71 | 0046:00E080C0808000 72 | 0047:006080A0A0E000 73 | 0048:00A0A0E0A0A000 74 | 0049:00E0404040E000 75 | 004A:00602020A0E000 76 | 004B:00A0A0C0A0A000 77 | 004C:0080808080E000 78 | 004D:00E0E0E0A0A000 79 | 004E:00A0E0E0E0A000 80 | 004F:0060A0A0A0E000 81 | 0050:00E0A0E0808000 82 | 0051:0060A0A0A0C060 83 | 0052:00E0A0C0A0A000 84 | 0053:006080E020E000 85 | 0054:00E04040404000 86 | 0055:00A0A0A0A0E000 87 | 0056:00A0A0A0C08000 88 | 0057:00A0A0E0E0E000 89 | 0058:00A0A040A0A000 90 | 0059:00A0A0E0404000 91 | 005A:00E0204080E000 92 | 005B:00E0C0C0C0C0E0 93 | 005C:00808040402020 94 | 005D:00E060606060E0 95 | 005E:0040A000000000 96 | 005F:000000000000F0 97 | 0060:00602000000000 98 | 0061:00006020E0E000 99 | 0062:0080E0A0A0E000 100 | 0063:0000608080E000 101 | 0064:0020E0A0A0E000 102 | 0065:0000E0E080E000 103 | 0066:006080E0808000 104 | 0067:0000E0A0E020E0 105 | 0068:0080E0A0A0A000 106 | 0069:4000C04040E000 107 | 006A:2000602020A0E0 108 | 006B:0080A0C0C0A000 109 | 006C:00C04040406000 110 | 006D:0000E0E0E0A000 111 | 006E:0000E0A0A0A000 112 | 006F:0000E0A0A0E000 113 | 0070:0000E0A0E08080 114 | 0071:0000E0A0E02020 115 | 0072:0000E080808000 116 | 0073:0000E08060E000 117 | 0074:00406040406000 118 | 0075:0000A0A0A0E000 119 | 0076:0000A0A0E04000 120 | 0077:0000A0E0E0E000 121 | 0078:0000A040A0A000 122 | 0079:0000A0A0E020E0 123 | 007A:0000E060C0E000 124 | 007B:006040C0404060 125 | 007C:00404040404000 126 | 007D:00C040604040C0 127 | 007E:000020E0800000 128 | 007F:004040A0A0E000 129 | 00C0:804060A0E0A000 130 | 00C1:204060A0E0A000 131 | 00C2:40A060A0E0A000 132 | 00C3:50A060A0E0A000 133 | 00C4:A060A0A0E0A000 134 | 00C5:40A040A0E0A000 135 | 00C6:0070A0B0E0B000 136 | 00C7:0060808080E060 137 | 00C8:8040E0C080E000 138 | 00C9:2040E0C080E000 139 | 00CA:40A0E0C080E000 140 | 00CB:A0E080C080E000 141 | 00CC:8040E04040E000 142 | 00CD:2040E04040E000 143 | 00CE:40A0E04040E000 144 | 00CF:A0E0404040E000 145 | 00D0:006050D0506000 146 | 00D1:50A0A0E0E0A000 147 | 00D2:8040E0A0A0E000 148 | 00D3:2040E0A0A0E000 149 | 00D4:40A0E0A0A0E000 150 | 00D5:50A0E0A0A0E000 151 | 00D6:A0E0A0A0A0E000 152 | 00D7:0000A040A00000 153 | 00D8:20E0E0A0E0E080 154 | 00D9:8040A0A0A0E000 155 | 00DA:2040A0A0A0E000 156 | 00DB:40A0A0A0A0E000 157 | 00DC:A000A0A0A0E000 158 | 00DD:2040A0E0404000 159 | 00DE:0080E0A0E08000 160 | 00DF:00C0C0A0A0E080 161 | 00E0:80406020E0E000 162 | 00E1:20406020E0E000 163 | 00E2:40A06020E0E000 164 | 00E3:50A06020E0E000 165 | 00E4:A0006020E0E000 166 | 00E5:40A04020E0E000 167 | 00E6:00007030E0F000 168 | 00E7:0000608080E060 169 | 00E8:8040E0E080E000 170 | 00E9:2040E0E080E000 171 | 00EA:40A0E0E080E000 172 | 00EB:A000E0E080E000 173 | 00EC:8040C04040E000 174 | 00ED:2040C04040E000 175 | 00EE:40A0C04040E000 176 | 00EF:A000C04040E000 177 | 00F0:40306060A0E000 178 | 00F1:50A0E0A0A0A000 179 | 00F2:8040E0A0A0E000 180 | 00F3:2040E0A0A0E000 181 | 00F4:40A0E0A0A0E000 182 | 00F5:50A0E0A0A0E000 183 | 00F6:A000E0A0A0E000 184 | 00F7:004000E0004000 185 | 00F8:0020E0E0E0E080 186 | 00F9:8040A0A0A0E000 187 | 00FA:2040A0A0A0E000 188 | 00FB:40A000A0A0E000 189 | 00FC:A000A0A0A0E000 190 | 00FD:2040A0A0E020E0 191 | 00FE:008080E0E08080 192 | 00FF:A000A0A0E020E0 -------------------------------------------------------------------------------- /examples/utils/random.h: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | void cleanup_random(); 7 | 8 | /* ============================= 9 | Perlin noise 10 | 11 | ADAPTED FROM: 12 | https://github.com/processing/p5.js/blob/master/src/math/noise.js 13 | WHICH WAS ADAPTED FROM: 14 | https://www.kuehlbox.wtf/download/demos/farbrausch/fr010src.zip 15 | ============================= */ 16 | 17 | #define PERLIN_YWRAPB 4 18 | #define PERLIN_YWRAP (1<=1.0) { xi++; xf--; } 74 | if (yf>=1.0) { yi++; yf--; } 75 | if (zf>=1.0) { zi++; zf--; } 76 | } 77 | return r; 78 | } 79 | 80 | void noiseDetail(lod, falloff){ 81 | if (lod>0){perlin_octaves=lod;} 82 | if (falloff>0){perlin_amp_falloff=falloff;} 83 | } 84 | 85 | 86 | /* ============================= 87 | Gaussian randomness 88 | 89 | ADAPTED FROM: 90 | The Ziggurat Method for Generating Random Variables 91 | George Marsaglia; Wai Wan Tsang (2000) 92 | https://core.ac.uk/download/pdf/6287927.pdf 93 | ============================= */ 94 | 95 | #define SHR3 (jz = jsr, jsr^=(jsr<<13), jsr^=(jsr>>17), jsr^=(jsr<<5), jz+jsr) 96 | #define UNI (.5 + (signed) SHR3 * .2328306e-9) 97 | #define RNOR (hz=SHR3, iz=hz&127, (abs(hz)0)? r+x: -r-x; 115 | } 116 | if ( fn[iz]+UNI*(fn[iz-1]-fn[iz]) < exp(-.5*x*x)) return x; 117 | hz = SHR3; iz=hz&127; if (abs(hz)=1; i--){ 130 | dn = sqrt(-2.*log(vn/dn+exp(-.5*dn*dn))); 131 | kn[i+1]=(dn/tn)*m1; tn=dn; 132 | fn[i]=exp(-.5*dn*dn); wn[i]=dn/m1; 133 | } 134 | } 135 | 136 | float randomGaussian(){ 137 | if (!ziggurat_initialized){ 138 | kn = (unsigned long*)malloc(sizeof(unsigned long)*128); 139 | wn = (float*)malloc(sizeof(float)*128); 140 | fn = (float*)malloc(sizeof(float)*128); 141 | zigset(rand()); 142 | ziggurat_initialized = 1; 143 | atexit(cleanup_random); 144 | } 145 | return RNOR; 146 | } 147 | 148 | void cleanup_random(){ 149 | if (perlin_initialized){ 150 | free(p_perlin); 151 | perlin_initialized = 0; 152 | } 153 | if (ziggurat_initialized){ 154 | free(fn); 155 | free(kn); 156 | free(wn); 157 | ziggurat_initialized = 0; 158 | } 159 | } -------------------------------------------------------------------------------- /examples/assets/5000.txt: -------------------------------------------------------------------------------- 1 | 道可道非常道名可名非常名無名天地之始有名萬物之母故常無欲以觀其妙常有欲以觀其徼此兩者同出而異名同謂之玄玄之又玄眾妙之門天下皆知美之為美斯惡矣皆知善之為善斯不善矣故有無相生難易相成長短相形高下相傾音聲相和前後相隨是以聖人處無為之事行不言之教萬物作焉而不辭生而不有為而不恃功成而弗居夫唯弗居是以不去不尚賢使民不爭不貴難得之貨使民不為盜不見可欲使民心不亂是以聖人之治虛其心實其腹弱其志強其骨常使民無知無欲使夫智者不敢為也為無為則無不治道沖而用之或不盈淵兮似萬物之宗挫其銳解其紛和其光同其塵湛兮似或存吾不知誰之子象帝之先天地不仁以萬物為芻狗聖人不仁以百姓為芻狗天地之間其猶橐蘥乎虛而不屈動而愈出多言數窮不如守中谷神不死是謂玄牝玄牝之門是謂天地根綿綿若存用之不勤天長地久天地所以能長且久者以其不自生故能長久是以聖人後其身而身先外其身而身存非以其無私邪故能成其私上善若水水善利萬物而不爭處眾人之所惡故幾於道居善地心善淵與善仁言善信政善治事善能動善時夫唯不爭故無尤持而盈之不如其已揣而銳之不可長保金玉滿堂莫之能守富貴而驕自遺其咎功遂身退天之道載營魄抱一能無離乎專氣致柔能嬰兒乎滌除玄覽能無疵乎愛國治民能無為乎天門開闔能為雌乎明白四達能無知乎生之畜之生而不有為而不恃長而不宰是謂玄德三十輻共一轂當其無有車之用埏埴以為器當其無有器之用鑿戶牖以為室當其無有室之用故有之以為利無之以為用五色令人目盲五音令人耳聾五味令人口爽馳騁畋獵令人心發狂難得之貨令人行妨是以聖人為腹不為目故去彼取此寵辱若驚貴大患若身何謂寵辱若驚寵為下得之若驚失之若驚是謂寵辱若驚何謂貴大患若身吾所以有大患者為吾有身及吾無身吾有何患故貴以身為天下若可寄天下愛以身為天下若可托天下視之不見名曰夷聽之不聞名曰希搏之不得名曰微此三者不可致詰故混而為一其上不皦其下不昧繩繩不可名復歸於無物是謂無狀之狀無物之象是謂惚恍迎之不見其首隨之不見其後執古之道以御今之有能知古始是謂道紀古之善為士者微妙玄通深不可識夫唯不可識故強為之容豫兮若冬涉川猶兮若畏四鄰儼兮其若客渙兮若冰之釋敦兮其若朴曠兮其若谷混兮其若濁孰能晦以理之徐明孰能濁以靜之徐清孰能安以動之徐生保此道者不欲盈夫唯不盈故能蔽而新成致虛極守靜篤萬物並作吾以觀復夫物芸芸各復歸其根歸根曰靜靜曰復命復命曰常知常曰明不知常妄作凶知常容容乃公公乃王王乃天天乃道道乃久沒身不殆太上下不知有之其次親而譽之其次畏之其次侮之信不足焉有不信焉悠兮其貴言功成事遂百姓皆謂我自然大道廢有仁義智慧出有大偽六親不和有孝慈國家昏亂有忠臣絕聖棄智民利百倍絕仁棄義民復孝慈絕巧棄利盜賊無有此三者以為文不足故令有所屬見素抱朴少私寡欲絕學無憂唯之與阿相去幾何善之與惡相去若何人之所畏不可不畏荒兮其未央哉眾人熙熙如享太牢如登春台我獨泊兮其未兆如嬰兒之未孩兮若無所歸眾人皆有餘而我獨若遺我愚人之心也哉沌沌兮俗人昭昭我獨昏昏俗人察察我獨悶悶澹兮其若海飉兮若無止眾人皆有以我獨頑且鄙我獨異於人而貴食母孔德之容惟道是從道之為物惟恍惟惚惚兮恍兮其中有象恍兮惚兮其中有物窈兮冥兮其中有精其精甚真其中有信自今及古其名不去以閱眾甫吾何以知眾甫之狀哉以此曲則全枉則直窪則盈敝則新少則多多則惑是以聖人抱一為天下式不自見故明不自是故彰不自伐故有功不自矜故長夫唯不爭故天下莫能與之爭古之所謂曲則全者豈虛言哉誠全而歸之希言自然故飄風不終朝驟雨不終日孰為此者天地天地尚不能久而況于人乎故從事于道者同于道德者同于德失者同于失同于道者道亦樂得之同于德者德亦樂得之于失者失亦樂得之信不足焉有不信焉企者不立跨者不行自見者不明自是者不彰自伐者無功自矜者不長其在道也曰餘食贅形物或惡之故有道者不處有物混成先天地生寂兮寥兮獨立而不改周行而不殆可以為天地母吾不知其名強字之曰道強為之名曰大大曰逝逝曰遠遠曰反故道大天大地大人亦大域中有四大而人居其一焉人法地地法天天法道道法自然重為輕根靜為躁君是以君子終日行不離輜重雖有榮觀燕處超然奈何萬乘之主而以身輕天下輕則失根躁則失君善行無轍跡善言無瑕謫善數不用籌策善閉無關楗而不可開善結無繩約而不可解是以聖人常善救人故無棄人常善救物故無棄物是謂襲明故善人者不善人之師不善人者善人之資不貴其師不愛其資雖智大迷是謂要妙知其雄守其雌為天下谿為天下谿常德不離復歸于嬰兒知其白守其黑為天下式常德不忒復歸于無極知其榮守其辱為天下谷為天下谷常德乃足復歸于朴為天下式朴散則為器聖人用之則為官長故大制不割將欲取天下而為之吾見其不得已天下神器不可為也不可執也為者敗之執者失之故物或行或隨或噓或吹或強或羸或載或隳是以聖人去甚去奢去泰以道佐人主者不以兵強天下其事好還師之所處荊棘生焉大軍之后必有凶年善者果而已不敢以取強果而勿矜果而勿伐果而勿驕果而不得已果而勿強物壯則老是謂不道不道早已夫佳兵者不祥之器物或惡之故有道者不處君子居則貴左用兵則貴右兵者不祥之器非君子之器不得已而用之恬淡為上勝而不美而美之者是樂殺人夫樂殺人者則不可得志于天下矣吉事尚左凶事尚右偏將軍居左上將軍居右言以喪禮處之殺人之眾以悲哀泣之戰勝以喪禮處之道常無名朴雖小天下莫能臣侯王若能守之萬物將自賓天地相合以降甘露民莫之令而自均始制有名名亦既有夫亦將知止知止可以不殆譬道之在天下猶川谷之于江海知人者智自知者明勝人者有力自勝者強知足者富強行者有志不失其所者久死而不亡者壽大道氾兮其可左右萬物恃之以生而不辭功成不名有衣養萬物而不為主常無欲可名于小萬物歸焉而不為主可名為大以其終不自為大故能成其大執大象天下往往而不害安平太樂與餌過客止道之出口淡乎其無味視之不足見聽之不足聞用之不足既將欲歙之必固張之將欲弱之必固強之將欲廢之必固興之將欲取之必固與之是謂微明柔勝剛弱勝強魚不可脫于淵國之利器不可以示人道常無為而無不為侯王若能守之萬物將自化化而欲作吾將鎮之以無名之朴鎮之以無名之朴夫亦將不欲不欲以靜天下將自正老子德經上德不德是以有德下德不失德是以無德上德無為而無以為下德無為而有以為上仁為之而無以為上義為之而有以為上禮為之而莫之應則攘臂而扔之故失道而后德失德而后仁失仁而后義失義而后禮夫禮者忠信之薄而亂之首前識者道之華而愚之始是以大丈夫處其厚不居其薄處其實不居其華故去彼取此昔之得一者天得一以清地得一以寧神得一以靈谷得一以盈萬物得一以生侯王得一以為天下正其致之也天無以清將恐裂地無以寧將恐廢神無以靈將恐歇谷無以盈將恐竭萬物無以生將恐滅侯王無以貞將恐蹶故貴以賤為本高以下為基是以侯王自稱孤寡不穀此非以賤為本邪非乎故致譽無譽是故不欲琭琭如玉珞珞如石反者道之動弱者道之用天下萬物生于有有生于無上士聞道勤而行之中士聞道若存若亡下士聞道大笑之不笑不足以為道故建言有之明道若昧進道若退夷道若纇上德若谷大白若辱廣德若不足建德若偷質真若渝大方無隅大器晚成大音希聲大象無形道隱無名夫唯道善貸且成道生一一生二二生三三生萬物萬物負陰而抱陽沖氣以為和人之所惡唯孤寡不谷而王公以為稱故物或損之而益或益之而損人之所教我亦教之強梁者不得其死吾將以為教父天下之至柔馳騁天下之至堅無有入無間吾是以知無為之有益不言之教無為之益天下希及之名與身孰親身與貨孰多得與亡孰病是故甚愛必大費多藏必厚亡故知足不辱知止不殆可以長久大成若缺其用不弊大盈若沖其用不窮大直若屈大巧若拙大辯若訥靜勝躁寒勝熱清靜為天下正天下有道卻走馬以糞天下無道戎馬生于郊禍莫大于不知足咎莫大于欲得故知足之足常足矣不出戶知天下不窺牖見天道其出彌遠其知彌少是以聖人不行而知不見而明不為而成為學日益為道日損損之又損以至于無為無為而無不為取天下常以無事及其有事不足以取天下聖人常無心以百姓心為心善者吾善之不善者吾亦善之德善信者吾信之不信者吾亦信之德信聖人在天下歙歙焉為天下渾其心百姓皆注其耳目聖人皆孩之出生入死生之徒十有三死之徒十有三人之生動之于死地亦十有三夫何故以其生生之厚蓋聞善攝生者路行不遇兕虎入軍不被甲兵兕無所投其角虎無所措其爪兵無所容其刃夫何故以其無死地道生之德畜之物形之勢成之是以萬物莫不尊道而貴德道之尊德之貴夫莫之命而常自然故道生之德畜之長之育之成之熟之養之覆之生而不有為而不恃長而不宰是謂玄德天下有始以為天下母既得其母以知其子復守其母沒身不殆塞其兌閉其門終身不勤開其兌濟其事終身不救見小曰明守柔曰強用其光復歸其明無遺身殃是為習常使我介然有知行于大道唯施是畏大道甚夷而人好徑朝甚除田甚蕪倉甚虛服文采帶利劍厭飲食財貨有餘是為盜夸非道也哉善建者不拔善抱者不脫子孫以祭祀不輟修之于身其德乃真修之于家其德乃餘修之于鄉其德乃長修之于國其德乃豐修之于天下其德乃普故以身觀身以家觀家以鄉觀鄉以國觀國以天下觀天下吾何以知天下然哉以此含德之厚比于赤子毒蟲不螫猛獸不據攫鳥不搏骨弱筋柔而握固未知牝牡之合而朘作精之至也終日號而不嗄和之至也知和曰常知常曰明益生曰祥心使氣曰強物壯則老謂之不道不道早已知者不言言者不知塞其兌閉其門挫其銳解其紛和其光同其塵是謂玄同故不可得而親不可得而疏不可得而利不可得而害不可得而貴不可得而賤故為天下貴以正治國以奇用兵以無事取天下吾何以知其然哉以此天下多忌諱而民彌貧人多利器國家滋昏人多伎巧奇物滋起法令滋彰盜賊多有故聖人云我無為而民自化我好靜而民自正我無事而民自富我無欲而民自朴其政悶悶其民淳淳其政察察其民缺缺禍兮福之所倚福兮禍之所伏孰知其極其無正也正復為奇善復為妖人之迷其日固久是以聖人方而不割廉而不劌直而不肆光而不耀治人事天莫若嗇夫為嗇是謂早服早服謂之重積德重積德則無不克無不克則莫知其極莫知其極可以有國有國之母可以長久是謂深根固柢長生久視之道治大國若烹小鮮以道蒞天下其鬼不神非其鬼不神其神不傷人非其神不傷人聖人亦不傷人夫兩不相傷故德交歸焉大國者下流天下之交也天下之牝牝常以靜勝牡以靜為下故大國以下小國則取小國小國以下大國則取大國故或下以取或下而取大國不過欲兼畜人小國不過欲入事人夫兩者各得所欲大者宜為下道者萬物之奧善人之寶不善人之所保美言可以市尊美行可以加人人之不善何棄之有故立天子置三公雖有拱璧以先駟馬不如坐進此道古之所以貴此道者何不曰求以得有罪以免耶故為天下貴為無為事無事味無味大小多少報怨以德圖難于其易為大于其細天下難事必作于易天下大事必作于細是以聖人終不為大故能成其大夫輕諾必寡信多易必多難是以聖人猶難之故終無難矣其安易持其未兆易謀其脆易泮其微易散為之于未有治之于未亂合抱之木生于毫末九層之臺起于累土千里之行始于足下為者拜之執者失之是以聖人無為故無敗無執故無師民之從事常于几成而敗之慎終如始則無敗事是以聖人欲不欲不貴難得之貨學不學復眾人之所過以輔萬物之自然而不敢為古之善為道者非以明民將以愚之民之難治以其智多故以智治國國之賊不以智治國國之福知此兩者亦稽式常知稽式是謂玄德玄德深遠與物反矣然后乃至大順江海之所以能為百谷王者以其善下之故能為百谷王是以聖人欲上民必以言下之欲先民必以身后之是以聖人處上而民不重處前而民不害是以天下樂推而不厭以其不爭故天下莫能與之爭天下皆謂我道大似不肖夫唯大故似不肖若肖久矣其細也夫我有三寶持而保之一曰慈二曰儉三曰不敢為天下先慈故能勇儉故能廣不敢為天下先故能成器長今舍慈且勇舍儉且廣舍后且先死矣夫慈以戰則勝以守則固天將救之以慈衛之善為士者不武善戰者不怒善勝敵者不與善用人者為之下是謂不爭之德是謂用人之力是謂配天古之極用兵有言吾不敢為主而為客不敢進寸而退尺是謂行無行攘無臂扔無敵執無兵禍莫大于輕敵輕敵几喪吾寶故抗兵相若哀者勝矣吾言甚易知甚易行天下莫能知莫能行言有宗事有君夫唯無知是以不我知知我者希則我者貴是以聖人被褐而懷玉知不知上矣不知知病也聖人不病以其病病夫唯病病是以不病民不畏威則大威至無狎其所居無厭其所生夫唯不厭是以不厭是以聖人自知不自見自愛不自貴故去彼取此勇于敢則殺勇于不敢則活此兩者或利或害天之所惡孰知其故是以聖人猶難之天之道不爭而善勝不言而善應不召而自來繕然而善謀天網恢恢疏而不失民不畏死奈何以死懼之若使民常畏死而為奇者吾得執而殺之孰敢常有司殺者殺夫代司殺者殺是謂代大匠斲夫代大匠斲者希有不傷其手矣民之飢以其上食稅之多是以飢民之難治以其上之有為是以難治民之輕死以其上求生之厚是以輕死夫唯無以生為者是賢于貴生人之生也柔弱其死也堅強草木之生也柔脆其死也枯槁故堅強者死之徒柔弱者生之徒是以兵強則滅木強則折強大處下柔弱處上天之道其猶張弓歟高者抑之下者舉之有餘者損之不足者補之天之道損有餘而補不足人之道則不然損不足以奉有餘孰能有餘以奉天下唯有道者是以聖人為而不恃功成而不處其不欲見賢天下莫柔弱于水而攻堅強者莫之能勝以其無以易之弱之勝強柔之勝剛天下莫不知莫能行是以聖人云受國之垢是謂社稷主受國不祥是為天下王正言若反和大怨必有餘怨報怨以德安可以為善是以聖人執左契而不責于人有德司契無德司徹天道無親常與善人小國寡民使有什伯之器而不用使民重死而不遠徙雖有舟輿無所乘之雖有甲兵無所陳之使民復結繩而用之甘其食美其服安其居樂其俗鄰國相望雞犬之聲相聞民至老死不相往來信言不美美言不信善者不辯辯者不善知者不博博者不知聖人不積既以為人己愈有既以與人己愈多天之道利而不害聖人之道為而不爭 -------------------------------------------------------------------------------- /fonts/tecate/8/spleen-5x8.hex: -------------------------------------------------------------------------------- 1 | 0020:0000000000000000 2 | 0021:2020202020002000 3 | 0022:5050500000000000 4 | 0023:0050F85050F85000 5 | 0024:2070A0603030E020 6 | 0025:1090A02040509080 7 | 0026:20505060A0906800 8 | 0027:2020200000000000 9 | 0028:1020404040402010 10 | 0029:4020101010102040 11 | 002A:00009060F0609000 12 | 002B:00002020F8202000 13 | 002C:0000000000202040 14 | 002D:00000000F0000000 15 | 002E:0000000000002000 16 | 002F:1010202040408080 17 | 0030:006090B0D0906000 18 | 0031:0020602020207000 19 | 0032:006090106080F000 20 | 0033:0060902010906000 21 | 0034:0080A0A0F0202000 22 | 0035:00F080F01010E000 23 | 0036:006080E090906000 24 | 0037:00F0902020404000 25 | 0038:0060906090906000 26 | 0039:0060909070106000 27 | 003A:0000002000002000 28 | 003B:0000002000202040 29 | 003C:0010204040201000 30 | 003D:000000F000F00000 31 | 003E:0040201010204000 32 | 003F:6090102040004000 33 | 0040:006090B0B0807000 34 | 0041:00609090F0909000 35 | 0042:00E090E09090E000 36 | 0043:0070808080807000 37 | 0044:00E090909090E000 38 | 0045:007080E080807000 39 | 0046:00708080E0808000 40 | 0047:007080B090907000 41 | 0048:009090F090909000 42 | 0049:0070202020207000 43 | 004A:007020202020C000 44 | 004B:009090E090909000 45 | 004C:0080808080807000 46 | 004D:0090F0F090909000 47 | 004E:0090D0D0B0B09000 48 | 004F:0060909090906000 49 | 0050:00E09090E0808000 50 | 0051:0060909090906030 51 | 0052:00E09090E0909000 52 | 0053:007080601010E000 53 | 0054:00F8202020202000 54 | 0055:0090909090907000 55 | 0056:0090909090606000 56 | 0057:00909090F0F09000 57 | 0058:0090906060909000 58 | 0059:009090907010E000 59 | 005A:00F010204080F000 60 | 005B:7040404040404070 61 | 005C:8080404020201010 62 | 005D:7010101010101070 63 | 005E:0020508800000000 64 | 005F:00000000000000F0 65 | 0060:4020000000000000 66 | 0061:0000601070907000 67 | 0062:8080E0909090E000 68 | 0063:0000708080807000 69 | 0064:1010709090907000 70 | 0065:00007090F0807000 71 | 0066:304040E040404000 72 | 0067:00007090906010E0 73 | 0068:8080E09090909000 74 | 0069:0020002020202000 75 | 006A:00200020202020C0 76 | 006B:808090A0C0A09000 77 | 006C:4040404040403000 78 | 006D:000090F0F0909000 79 | 006E:0000E09090909000 80 | 006F:0000609090906000 81 | 0070:0000E09090E08080 82 | 0071:0000709090701010 83 | 0072:0000709080808000 84 | 0073:000070806010E000 85 | 0074:4040E04040403000 86 | 0075:0000909090907000 87 | 0076:0000909090606000 88 | 0077:00009090F0F09000 89 | 0078:0000906060909000 90 | 0079:00009090907010E0 91 | 007A:0000F0102040F000 92 | 007B:304040C0C0404030 93 | 007C:0020202020202000 94 | 007D:C0202030302020C0 95 | 007E:0048B00000000000 96 | 007F:0000000000000000 97 | 00A0:0000000000000000 98 | 00A1:0000000000000000 99 | 00A2:0000000000000000 100 | 00A3:0000000000000000 101 | 00A4:0000000000000000 102 | 00A5:0000000000000000 103 | 00A6:0000000000000000 104 | 00A7:0000000000000000 105 | 00A8:0000000000000000 106 | 00A9:0000000000000000 107 | 00AA:0000000000000000 108 | 00AB:0000000000000000 109 | 00AC:0000000000000000 110 | 00AD:0000000000000000 111 | 00AE:0000000000000000 112 | 00AF:0000000000000000 113 | 00B0:0000000000000000 114 | 00B1:0000000000000000 115 | 00B2:0000000000000000 116 | 00B3:0000000000000000 117 | 00B4:0000000000000000 118 | 00B5:0000000000000000 119 | 00B6:0000000000000000 120 | 00B7:0000000000000000 121 | 00B8:0000000000000000 122 | 00B9:0000000000000000 123 | 00BA:0000000000000000 124 | 00BB:0000000000000000 125 | 00BC:0000000000000000 126 | 00BD:0000000000000000 127 | 00BE:0000000000000000 128 | 00BF:0000000000000000 129 | 00C0:0000000000000000 130 | 00C1:0000000000000000 131 | 00C2:0000000000000000 132 | 00C3:0000000000000000 133 | 00C4:0000000000000000 134 | 00C5:0000000000000000 135 | 00C6:0000000000000000 136 | 00C7:0000000000000000 137 | 00C8:0000000000000000 138 | 00C9:0000000000000000 139 | 00CA:0000000000000000 140 | 00CB:0000000000000000 141 | 00CC:0000000000000000 142 | 00CD:0000000000000000 143 | 00CE:0000000000000000 144 | 00CF:0000000000000000 145 | 00D0:0000000000000000 146 | 00D1:0000000000000000 147 | 00D2:0000000000000000 148 | 00D3:0000000000000000 149 | 00D4:0000000000000000 150 | 00D5:0000000000000000 151 | 00D6:0000000000000000 152 | 00D7:0000000000000000 153 | 00D8:0000000000000000 154 | 00D9:0000000000000000 155 | 00DA:0000000000000000 156 | 00DB:0000000000000000 157 | 00DC:0000000000000000 158 | 00DD:0000000000000000 159 | 00DE:0000000000000000 160 | 00DF:0000000000000000 161 | 00E0:0000000000000000 162 | 00E1:0000000000000000 163 | 00E2:0000000000000000 164 | 00E3:0000000000000000 165 | 00E4:0000000000000000 166 | 00E5:0000000000000000 167 | 00E6:0000000000000000 168 | 00E7:0000000000000000 169 | 00E8:0000000000000000 170 | 00E9:0000000000000000 171 | 00EA:0000000000000000 172 | 00EB:0000000000000000 173 | 00EC:0000000000000000 174 | 00ED:0000000000000000 175 | 00EE:0000000000000000 176 | 00EF:0000000000000000 177 | 00F0:0000000000000000 178 | 00F1:0000000000000000 179 | 00F2:0000000000000000 180 | 00F3:0000000000000000 181 | 00F4:0000000000000000 182 | 00F5:0000000000000000 183 | 00F6:0000000000000000 184 | 00F7:0000000000000000 185 | 00F8:0000000000000000 186 | 00F9:0000000000000000 187 | 00FA:0000000000000000 188 | 00FB:0000000000000000 189 | 00FC:0000000000000000 190 | 00FD:0000000000000000 191 | 00FE:0000000000000000 192 | 00FF:0000000000000000 -------------------------------------------------------------------------------- /fonts/tecate/15/neep-iso8859-1-part-08x15.hex: -------------------------------------------------------------------------------- 1 | 0080:007E42424242424242424242427E00 2 | 0081:007E42424242424242424242427E00 3 | 0082:007E42424242424242424242427E00 4 | 0083:007E42424242424242424242427E00 5 | 0084:007E42424242424242424242427E00 6 | 0085:007E42424242424242424242427E00 7 | 0086:007E42424242424242424242427E00 8 | 0087:007E42424242424242424242427E00 9 | 0088:007E42424242424242424242427E00 10 | 0089:007E42424242424242424242427E00 11 | 008A:007E42424242424242424242427E00 12 | 008B:007E42424242424242424242427E00 13 | 008C:007E42424242424242424242427E00 14 | 008D:007E42424242424242424242427E00 15 | 008E:007E42424242424242424242427E00 16 | 008F:007E42424242424242424242427E00 17 | 0090:007E42424242424242424242427E00 18 | 0091:007E42424242424242424242427E00 19 | 0092:007E42424242424242424242427E00 20 | 0093:007E42424242424242424242427E00 21 | 0094:007E42424242424242424242427E00 22 | 0095:007E42424242424242424242427E00 23 | 0096:007E42424242424242424242427E00 24 | 0097:007E42424242424242424242427E00 25 | 0098:007E42424242424242424242427E00 26 | 0099:007E42424242424242424242427E00 27 | 009A:007E42424242424242424242427E00 28 | 009B:007E42424242424242424242427E00 29 | 009C:007E42424242424242424242427E00 30 | 009D:007E42424242424242424242427E00 31 | 009E:007E42424242424242424242427E00 32 | 009F:007E42424242424242424242427E00 33 | 00A0:000000000000000000000000000000 34 | 00A1:000000000008080008080808080808 35 | 00A2:000000083C6A4848486A3C08000000 36 | 00A3:00001C32202020782020207E000000 37 | 00A4:0000000000413E2222223E41000000 38 | 00A5:000044442828107C107C1010000000 39 | 00A6:000010101010100010101010100000 40 | 00A7:00003C404038444444380404780000 41 | 00A8:000024240000000000000000000000 42 | 00A9:001C22414D5151514D41221C000000 43 | 00AA:000038043C444C34007C0000000000 44 | 00AB:000000000009122448241209000000 45 | 00AC:000000000000007E02020200000000 46 | 00AD:000000000000003C00000000000000 47 | 00AE:001C2241555951515141221C000000 48 | 00AF:00007E000000000000000000000000 49 | 00B0:000038444444380000000000000000 50 | 00B1:000000000808087F080808007F0000 51 | 00B2:0038440810207C0000000000000000 52 | 00B3:007C08180444380000000000000000 53 | 00B4:00000C300000000000000000000000 54 | 00B5:0000000000444444444C7A40400000 55 | 00B6:00003F694949693909090909000000 56 | 00B7:000000000000103810000000000000 57 | 00B8:000000000000000000000010083000 58 | 00B9:000818280808080000000000000000 59 | 00BA:0000384444444438007C0000000000 60 | 00BB:000000000048241209122448000000 61 | 00BC:0020602020202002060A121E020000 62 | 00BD:002060202020200C120204081E0000 63 | 00BE:0078103008483002060A121E020000 64 | 00BF:00000000000404000404081020301E 65 | 00C0:00300C003C6642427E424242000000 66 | 00C1:000C30003C6642427E424242000000 67 | 00C2:001824003C6642427E424242000000 68 | 00C3:00324C003C6642427E424242000000 69 | 00C4:002424003C6642427E424242000000 70 | 00C5:001824183C6642427E424242000000 71 | 00C6:00003E6848484E784848484E000000 72 | 00C7:00003C66424040404042663C083000 73 | 00C8:00300C007E40407C4040407E000000 74 | 00C9:000C30007E40407C4040407E000000 75 | 00CA:001824007E40407C4040407E000000 76 | 00CB:002424007E40407C4040407E000000 77 | 00CC:006018007C1010101010107C000000 78 | 00CD:000C30007C1010101010107C000000 79 | 00CE:001824007C1010101010107C000000 80 | 00CF:002424007C1010101010107C000000 81 | 00D0:000078444242E24242424478000000 82 | 00D1:00324C00426262524A464642000000 83 | 00D2:00300C003C6642424242663C000000 84 | 00D3:000C30003C6642424242663C000000 85 | 00D4:001824003C6642424242663C000000 86 | 00D5:00324C003C6642424242663C000000 87 | 00D6:002424003C6642424242663C000000 88 | 00D7:000000000042241818244200000000 89 | 00D8:00023C66464A4A525262663C400000 90 | 00D9:00300C00424242424242663C000000 91 | 00DA:000C3000424242424242663C000000 92 | 00DB:00182400424242424242663C000000 93 | 00DC:00242400424242424242663C000000 94 | 00DD:000C3000424242663C080808000000 95 | 00DE:000040407C464242467C4040000000 96 | 00DF:00003864444848444242524C400000 97 | 00E0:0000300C003C023E6242663A000000 98 | 00E1:00000C30003C023E6242663A000000 99 | 00E2:00001824003C023E6242663A000000 100 | 00E3:0000324C003C023E6242663A000000 101 | 00E4:00002424003C023E6242663A000000 102 | 00E5:00182418003C023E6242663A000000 103 | 00E6:00000000003609394F484936000000 104 | 00E7:00000000003C62404040623C083000 105 | 00E8:0000300C003C66427E40623C000000 106 | 00E9:00000C30003C66427E40623C000000 107 | 00EA:00001824003C66427E40623C000000 108 | 00EB:00002424003C66427E40623C000000 109 | 00EC:000060180038080808080808000000 110 | 00ED:000006180038080808080808000000 111 | 00EE:000018240038080808080808000000 112 | 00EF:000024240038080808080808000000 113 | 00F0:00402C1068043C664242663C000000 114 | 00F1:0000324C005C664242424242000000 115 | 00F2:0000300C003C66424242663C000000 116 | 00F3:00000C30003C66424242663C000000 117 | 00F4:00001824003C66424242663C000000 118 | 00F5:0000324C003C66424242663C000000 119 | 00F6:00002424003C66424242663C000000 120 | 00F7:000000000808007F00080800000000 121 | 00F8:00000000023C664A5A52663C400000 122 | 00F9:0000300C004242424242663A000000 123 | 00FA:00000C30004242424242663A000000 124 | 00FB:00001824004242424242663A000000 125 | 00FC:00002424004242424242663A000000 126 | 00FD:00000C300042424242663A0242663C 127 | 00FE:00004040405C66424242665C404040 128 | 00FF:000024240042424242663A0242663C -------------------------------------------------------------------------------- /fonts/tecate/15/neep-iso8859-15-part-08x15.hex: -------------------------------------------------------------------------------- 1 | 0080:007E42424242424242424242427E00 2 | 0081:007E42424242424242424242427E00 3 | 0082:007E42424242424242424242427E00 4 | 0083:007E42424242424242424242427E00 5 | 0084:007E42424242424242424242427E00 6 | 0085:007E42424242424242424242427E00 7 | 0086:007E42424242424242424242427E00 8 | 0087:007E42424242424242424242427E00 9 | 0088:007E42424242424242424242427E00 10 | 0089:007E42424242424242424242427E00 11 | 008A:007E42424242424242424242427E00 12 | 008B:007E42424242424242424242427E00 13 | 008C:007E42424242424242424242427E00 14 | 008D:007E42424242424242424242427E00 15 | 008E:007E42424242424242424242427E00 16 | 008F:007E42424242424242424242427E00 17 | 0090:007E42424242424242424242427E00 18 | 0091:007E42424242424242424242427E00 19 | 0092:007E42424242424242424242427E00 20 | 0093:007E42424242424242424242427E00 21 | 0094:007E42424242424242424242427E00 22 | 0095:007E42424242424242424242427E00 23 | 0096:007E42424242424242424242427E00 24 | 0097:007E42424242424242424242427E00 25 | 0098:007E42424242424242424242427E00 26 | 0099:007E42424242424242424242427E00 27 | 009A:007E42424242424242424242427E00 28 | 009B:007E42424242424242424242427E00 29 | 009C:007E42424242424242424242427E00 30 | 009D:007E42424242424242424242427E00 31 | 009E:007E42424242424242424242427E00 32 | 009F:007E42424242424242424242427E00 33 | 00A0:000000000000000000000000000000 34 | 00A1:000000000008080008080808080808 35 | 00A2:000000083C6A4848486A3C08000000 36 | 00A3:00001C32202020782020207E000000 37 | 00A4:0000001E31207C207820311E000000 38 | 00A5:000044442828107C107C1010000000 39 | 00A6:002418003C6642300C42663C000000 40 | 00A7:00003C404038444444380404780000 41 | 00A8:00002418003C62403C02463C000000 42 | 00A9:001C22414D5151514D41221C000000 43 | 00AA:000038043C444C34007C0000000000 44 | 00AB:000000000009122448241209000000 45 | 00AC:000000000000007E02020200000000 46 | 00AD:000000000000003C00000000000000 47 | 00AE:001C2241555951515141221C000000 48 | 00AF:00007E000000000000000000000000 49 | 00B0:000038444444380000000000000000 50 | 00B1:000000000808087F080808007F0000 51 | 00B2:0038440810207C0000000000000000 52 | 00B3:007C08180444380000000000000000 53 | 00B4:002418007E0204081020407E000000 54 | 00B5:0000000000444444444C7A40400000 55 | 00B6:00003F694949693909090909000000 56 | 00B7:000000000000103810000000000000 57 | 00B8:00002418007E02040810207E000000 58 | 00B9:000818280808080000000000000000 59 | 00BA:0000384444444438007C0000000000 60 | 00BB:000000000048241209122448000000 61 | 00BC:00003E6848484E484848683E000000 62 | 00BD:00000000003649494F484936000000 63 | 00BE:00242400424242663C080808000000 64 | 00BF:00000000000404000404081020301E 65 | 00C0:00300C003C6642427E424242000000 66 | 00C1:000C30003C6642427E424242000000 67 | 00C2:001824003C6642427E424242000000 68 | 00C3:00324C003C6642427E424242000000 69 | 00C4:002424003C6642427E424242000000 70 | 00C5:001824183C6642427E424242000000 71 | 00C6:00003E6848484E784848484E000000 72 | 00C7:00003C66424040404042663C083000 73 | 00C8:00300C007E40407C4040407E000000 74 | 00C9:000C30007E40407C4040407E000000 75 | 00CA:001824007E40407C4040407E000000 76 | 00CB:002424007E40407C4040407E000000 77 | 00CC:006018007C1010101010107C000000 78 | 00CD:000C30007C1010101010107C000000 79 | 00CE:001824007C1010101010107C000000 80 | 00CF:002424007C1010101010107C000000 81 | 00D0:000078444242E24242424478000000 82 | 00D1:00324C00426262524A464642000000 83 | 00D2:00300C003C6642424242663C000000 84 | 00D3:000C30003C6642424242663C000000 85 | 00D4:001824003C6642424242663C000000 86 | 00D5:00324C003C6642424242663C000000 87 | 00D6:002424003C6642424242663C000000 88 | 00D7:000000000042241818244200000000 89 | 00D8:00023C66464A4A525262663C400000 90 | 00D9:00300C00424242424242663C000000 91 | 00DA:000C3000424242424242663C000000 92 | 00DB:00182400424242424242663C000000 93 | 00DC:00242400424242424242663C000000 94 | 00DD:000C3000424242663C080808000000 95 | 00DE:000040407C464242467C4040000000 96 | 00DF:00003864444848444242524C400000 97 | 00E0:0000300C003C023E6242663A000000 98 | 00E1:00000C30003C023E6242663A000000 99 | 00E2:00001824003C023E6242663A000000 100 | 00E3:0000324C003C023E6242663A000000 101 | 00E4:00002424003C023E6242663A000000 102 | 00E5:00182418003C023E6242663A000000 103 | 00E6:00000000003609394F484936000000 104 | 00E7:00000000003C62404040623C083000 105 | 00E8:0000300C003C66427E40623C000000 106 | 00E9:00000C30003C66427E40623C000000 107 | 00EA:00001824003C66427E40623C000000 108 | 00EB:00002424003C66427E40623C000000 109 | 00EC:000060180038080808080808000000 110 | 00ED:000006180038080808080808000000 111 | 00EE:000018240038080808080808000000 112 | 00EF:000024240038080808080808000000 113 | 00F0:00402C1068043C664242663C000000 114 | 00F1:0000324C005C664242424242000000 115 | 00F2:0000300C003C66424242663C000000 116 | 00F3:00000C30003C66424242663C000000 117 | 00F4:00001824003C66424242663C000000 118 | 00F5:0000324C003C66424242663C000000 119 | 00F6:00002424003C66424242663C000000 120 | 00F7:000000000808007F00080800000000 121 | 00F8:00000000023C664A5A52663C400000 122 | 00F9:0000300C004242424242663A000000 123 | 00FA:00000C30004242424242663A000000 124 | 00FB:00001824004242424242663A000000 125 | 00FC:00002424004242424242663A000000 126 | 00FD:00000C300042424242663A0242663C 127 | 00FE:00004040405C66424242665C404040 128 | 00FF:000024240042424242663A0242663C -------------------------------------------------------------------------------- /fonts/tecate/15/neep-iso8859-2-part-08x15.hex: -------------------------------------------------------------------------------- 1 | 0080:007E42424242424242424242427E00 2 | 0081:007E42424242424242424242427E00 3 | 0082:007E42424242424242424242427E00 4 | 0083:007E42424242424242424242427E00 5 | 0084:007E42424242424242424242427E00 6 | 0085:007E42424242424242424242427E00 7 | 0086:007E42424242424242424242427E00 8 | 0087:007E42424242424242424242427E00 9 | 0088:007E42424242424242424242427E00 10 | 0089:007E42424242424242424242427E00 11 | 008A:007E42424242424242424242427E00 12 | 008B:007E42424242424242424242427E00 13 | 008C:007E42424242424242424242427E00 14 | 008D:007E42424242424242424242427E00 15 | 008E:007E42424242424242424242427E00 16 | 008F:007E42424242424242424242427E00 17 | 0090:007E42424242424242424242427E00 18 | 0091:007E42424242424242424242427E00 19 | 0092:007E42424242424242424242427E00 20 | 0093:007E42424242424242424242427E00 21 | 0094:007E42424242424242424242427E00 22 | 0095:007E42424242424242424242427E00 23 | 0096:007E42424242424242424242427E00 24 | 0097:007E42424242424242424242427E00 25 | 0098:007E42424242424242424242427E00 26 | 0099:007E42424242424242424242427E00 27 | 009A:007E42424242424242424242427E00 28 | 009B:007E42424242424242424242427E00 29 | 009C:007E42424242424242424242427E00 30 | 009D:007E42424242424242424242427E00 31 | 009E:007E42424242424242424242427E00 32 | 009F:007E42424242424242424242427E00 33 | 00A0:000000000000000000000000000000 34 | 00A1:00003C664242427E42424242040300 35 | 00A2:0042423C0000000000000000000000 36 | 00A3:00004040485060C04040407E000000 37 | 00A4:0000000000413E2222223E41000000 38 | 00A5:00906000404040404040407E000000 39 | 00A6:000C30003C6642300C42663C000000 40 | 00A7:00003C404038444444380404780000 41 | 00A8:000024240000000000000000000000 42 | 00A9:002418003C6642300C42663C000000 43 | 00AA:00003C664240300C0242663C083000 44 | 00AB:002418007F08080808080808000000 45 | 00AC:000C30007E0204081020407E000000 46 | 00AD:000000000000003C00000000000000 47 | 00AE:002418007E0204081020407E000000 48 | 00AF:000808007E0204081020407E000000 49 | 00B0:000038444444380000000000000000 50 | 00B1:00000000003C023E6242663A040300 51 | 00B2:000000000000000000000008100C00 52 | 00B3:00002020242830602020301C000000 53 | 00B4:00000C300000000000000000000000 54 | 00B5:00483000202020202020301C000000 55 | 00B6:00000C30003C62403C02463C000000 56 | 00B7:000024180000000000000000000000 57 | 00B8:000000000000000000000010083000 58 | 00B9:00002418003C62403C02463C000000 59 | 00BA:00000000003C62403C02463C083000 60 | 00BB:00241800207C20202020321C000000 61 | 00BC:00000C30007E02040810207E000000 62 | 00BD:000012240000000000000000000000 63 | 00BE:00002418007E02040810207E000000 64 | 00BF:00000808007E02040810207E000000 65 | 00C0:000C30007C4642467C484442000000 66 | 00C1:000C30003C6642427E424242000000 67 | 00C2:001824003C6642427E424242000000 68 | 00C3:42423C003C6642427E424242000000 69 | 00C4:002424003C6642427E424242000000 70 | 00C5:00186000404040404040407E000000 71 | 00C6:000C30003C6642404042663C000000 72 | 00C7:00003C66424040404042663C083000 73 | 00C8:002418003C6642404042663C000000 74 | 00C9:000C30007E40407C4040407E000000 75 | 00CA:00007E4040407C404040407E080600 76 | 00CB:002424007E40407C4040407E000000 77 | 00CC:002418007E40407C4040407E000000 78 | 00CD:000C30007C1010101010107C000000 79 | 00CE:001824007C1010101010107C000000 80 | 00CF:002418007844424242424478000000 81 | 00D0:000078444242E24242424478000000 82 | 00D1:000C3000426262524A464642000000 83 | 00D2:00241800426262524A464642000000 84 | 00D3:000C30003C6642424242663C000000 85 | 00D4:001824003C6642424242663C000000 86 | 00D5:001224003C6642424242663C000000 87 | 00D6:002424003C6642424242663C000000 88 | 00D7:000000000042241818244200000000 89 | 00D8:002418007C4642467C484442000000 90 | 00D9:00182418004242424242663C000000 91 | 00DA:000C3000424242424242663C000000 92 | 00DB:00122400424242424242663C000000 93 | 00DC:00242400424242424242663C000000 94 | 00DD:000C3000424242663C080808000000 95 | 00DE:00007F080808080808080808041800 96 | 00DF:00003864444848444242524C400000 97 | 00E0:00000C30005C624040404040000000 98 | 00E1:00000C30003C023E6242663A000000 99 | 00E2:00001824003C023E6242663A000000 100 | 00E3:0042423C003C023E6242663A000000 101 | 00E4:00002424003C023E6242663A000000 102 | 00E5:000C3000202020202020301C000000 103 | 00E6:00000C30003C62404040623C000000 104 | 00E7:00000000003C62404040623C083000 105 | 00E8:00002418003C62404040623C000000 106 | 00E9:00000C30003C66427E40623C000000 107 | 00EA:00000000003C66427E40623C100C00 108 | 00EB:00002424003C66427E40623C000000 109 | 00EC:00002418003C66427E40623C000000 110 | 00ED:000006180038080808080808000000 111 | 00EE:000018240038080808080808000000 112 | 00EF:00241802023A66424242663A000000 113 | 00F0:0000020F023A66424242663A000000 114 | 00F1:00000C30005C664242424242000000 115 | 00F2:00002418005C664242424242000000 116 | 00F3:00000C30003C66424242663C000000 117 | 00F4:00001824003C66424242663C000000 118 | 00F5:00001224003C66424242663C000000 119 | 00F6:00002424003C66424242663C000000 120 | 00F7:000000000808007F00080800000000 121 | 00F8:00002418005C624040404040000000 122 | 00F9:00182418004242424242663A000000 123 | 00FA:00000C30004242424242663A000000 124 | 00FB:00001224004242424242663A000000 125 | 00FC:00002424004242424242663A000000 126 | 00FD:00000C300042424242663A0242663C 127 | 00FE:00000020207C20202020321C083000 128 | 00FF:000008080000000000000000000000 -------------------------------------------------------------------------------- /fonts/tecate/15/neep-iso8859-9-part-08x15.hex: -------------------------------------------------------------------------------- 1 | 0080:007E42424242424242424242427E00 2 | 0081:007E42424242424242424242427E00 3 | 0082:007E42424242424242424242427E00 4 | 0083:007E42424242424242424242427E00 5 | 0084:007E42424242424242424242427E00 6 | 0085:007E42424242424242424242427E00 7 | 0086:007E42424242424242424242427E00 8 | 0087:007E42424242424242424242427E00 9 | 0088:007E42424242424242424242427E00 10 | 0089:007E42424242424242424242427E00 11 | 008A:007E42424242424242424242427E00 12 | 008B:007E42424242424242424242427E00 13 | 008C:007E42424242424242424242427E00 14 | 008D:007E42424242424242424242427E00 15 | 008E:007E42424242424242424242427E00 16 | 008F:007E42424242424242424242427E00 17 | 0090:007E42424242424242424242427E00 18 | 0091:007E42424242424242424242427E00 19 | 0092:007E42424242424242424242427E00 20 | 0093:007E42424242424242424242427E00 21 | 0094:007E42424242424242424242427E00 22 | 0095:007E42424242424242424242427E00 23 | 0096:007E42424242424242424242427E00 24 | 0097:007E42424242424242424242427E00 25 | 0098:007E42424242424242424242427E00 26 | 0099:007E42424242424242424242427E00 27 | 009A:007E42424242424242424242427E00 28 | 009B:007E42424242424242424242427E00 29 | 009C:007E42424242424242424242427E00 30 | 009D:007E42424242424242424242427E00 31 | 009E:007E42424242424242424242427E00 32 | 009F:007E42424242424242424242427E00 33 | 00A0:000000000000000000000000000000 34 | 00A1:000000000008080008080808080808 35 | 00A2:000000083C6A4848486A3C08000000 36 | 00A3:00001C32202020782020207E000000 37 | 00A4:0000000000413E2222223E41000000 38 | 00A5:000044442828107C107C1010000000 39 | 00A6:000010101010100010101010100000 40 | 00A7:00003C404038444444380404780000 41 | 00A8:000024240000000000000000000000 42 | 00A9:001C22414D5151514D41221C000000 43 | 00AA:000038043C444C34007C0000000000 44 | 00AB:000000000009122448241209000000 45 | 00AC:000000000000007E02020200000000 46 | 00AD:000000000000003C00000000000000 47 | 00AE:001C2241555951515141221C000000 48 | 00AF:00007E000000000000000000000000 49 | 00B0:000038444444380000000000000000 50 | 00B1:000000000808087F080808007F0000 51 | 00B2:0038440810207C0000000000000000 52 | 00B3:007C08180444380000000000000000 53 | 00B4:00000C300000000000000000000000 54 | 00B5:0000000000444444444C7A40400000 55 | 00B6:00003F694949693909090909000000 56 | 00B7:000000000000103810000000000000 57 | 00B8:000000000000000000000010083000 58 | 00B9:000818280808080000000000000000 59 | 00BA:0000384444444438007C0000000000 60 | 00BB:000000000048241209122448000000 61 | 00BC:0020602020202002060A121E020000 62 | 00BD:002060202020200C120204081E0000 63 | 00BE:0078103008483002060A121E020000 64 | 00BF:00000000000404000404081020301E 65 | 00C0:00300C003C6642427E424242000000 66 | 00C1:000C30003C6642427E424242000000 67 | 00C2:001824003C6642427E424242000000 68 | 00C3:00324C003C6642427E424242000000 69 | 00C4:002424003C6642427E424242000000 70 | 00C5:001824183C6642427E424242000000 71 | 00C6:00003E6848484E784848484E000000 72 | 00C7:00003C66424040404042663C083000 73 | 00C8:00300C007E40407C4040407E000000 74 | 00C9:000C30007E40407C4040407E000000 75 | 00CA:001824007E40407C4040407E000000 76 | 00CB:002424007E40407C4040407E000000 77 | 00CC:006018007C1010101010107C000000 78 | 00CD:000C30007C1010101010107C000000 79 | 00CE:001824007C1010101010107C000000 80 | 00CF:002424007C1010101010107C000000 81 | 00D0:42423C003C6642404E42663C000000 82 | 00D1:00324C00426262524A464642000000 83 | 00D2:00300C003C6642424242663C000000 84 | 00D3:000C30003C6642424242663C000000 85 | 00D4:001824003C6642424242663C000000 86 | 00D5:00324C003C6642424242663C000000 87 | 00D6:002424003C6642424242663C000000 88 | 00D7:000000000042241818244200000000 89 | 00D8:00023C66464A4A525262663C400000 90 | 00D9:00300C00424242424242663C000000 91 | 00DA:000C3000424242424242663C000000 92 | 00DB:00182400424242424242663C000000 93 | 00DC:00242400424242424242663C000000 94 | 00DD:001010007C1010101010107C000000 95 | 00DE:00003C664240300C0242663C083000 96 | 00DF:00003864444848444242524C400000 97 | 00E0:0000300C003C023E6242663A000000 98 | 00E1:00000C30003C023E6242663A000000 99 | 00E2:00001824003C023E6242663A000000 100 | 00E3:0000324C003C023E6242663A000000 101 | 00E4:00002424003C023E6242663A000000 102 | 00E5:00182418003C023E6242663A000000 103 | 00E6:00000000003609394F484936000000 104 | 00E7:00000000003C62404040623C083000 105 | 00E8:0000300C003C66427E40623C000000 106 | 00E9:00000C30003C66427E40623C000000 107 | 00EA:00001824003C66427E40623C000000 108 | 00EB:00002424003C66427E40623C000000 109 | 00EC:000060180038080808080808000000 110 | 00ED:000006180038080808080808000000 111 | 00EE:000018240038080808080808000000 112 | 00EF:000024240038080808080808000000 113 | 00F0:0042423C003A664242663A0242663C 114 | 00F1:0000324C005C664242424242000000 115 | 00F2:0000300C003C66424242663C000000 116 | 00F3:00000C30003C66424242663C000000 117 | 00F4:00001824003C66424242663C000000 118 | 00F5:0000324C003C66424242663C000000 119 | 00F6:00002424003C66424242663C000000 120 | 00F7:000000000808007F00080800000000 121 | 00F8:00000000023C664A5A52663C400000 122 | 00F9:0000300C004242424242663A000000 123 | 00FA:00000C30004242424242663A000000 124 | 00FB:00001824004242424242663A000000 125 | 00FC:00002424004242424242663A000000 126 | 00FD:000000000038080808080808000000 127 | 00FE:00000000003C62403C02463C083000 128 | 00FF:000024240042424242663A0242663C -------------------------------------------------------------------------------- /fonts/tecate/15/neep-iso8859-1-part-08x15-bold.hex: -------------------------------------------------------------------------------- 1 | 0080:007E42424242424242424242427E00 2 | 0081:007E42424242424242424242427E00 3 | 0082:007E42424242424242424242427E00 4 | 0083:007E42424242424242424242427E00 5 | 0084:007E42424242424242424242427E00 6 | 0085:007E42424242424242424242427E00 7 | 0086:007E42424242424242424242427E00 8 | 0087:007E42424242424242424242427E00 9 | 0088:007E42424242424242424242427E00 10 | 0089:007E42424242424242424242427E00 11 | 008A:007E42424242424242424242427E00 12 | 008B:007E42424242424242424242427E00 13 | 008C:007E42424242424242424242427E00 14 | 008D:007E42424242424242424242427E00 15 | 008E:007E42424242424242424242427E00 16 | 008F:007E42424242424242424242427E00 17 | 0090:007E42424242424242424242427E00 18 | 0091:007E42424242424242424242427E00 19 | 0092:007E42424242424242424242427E00 20 | 0093:007E42424242424242424242427E00 21 | 0094:007E42424242424242424242427E00 22 | 0095:007E42424242424242424242427E00 23 | 0096:007E42424242424242424242427E00 24 | 0097:007E42424242424242424242427E00 25 | 0098:007E42424242424242424242427E00 26 | 0099:007E42424242424242424242427E00 27 | 009A:007E42424242424242424242427E00 28 | 009B:007E42424242424242424242427E00 29 | 009C:007E42424242424242424242427E00 30 | 009D:007E42424242424242424242427E00 31 | 009E:007E42424242424242424242427E00 32 | 009F:007E42424242424242424242427E00 33 | 00A0:000000000000000000000000000000 34 | 00A1:000000000018180018181818181818 35 | 00A2:000000083E7F6360637F3E08000000 36 | 00A3:00001E3F33307C7C30307F7F000000 37 | 00A4:00000000C3FF7E66667EFFC3000000 38 | 00A5:000066663C187E7E187E7E18000000 39 | 00A6:000018181818180018181818180000 40 | 00A7:00003E7E603C7E667E3C067E7C0000 41 | 00A8:000036360000000000000000000000 42 | 00A9:003C42819DBDB1BD9D81423C000000 43 | 00AA:00003C063E667E36007E7E00000000 44 | 00AB:0000000000113366CC663311000000 45 | 00AC:000000000000007F7F030300000000 46 | 00AD:000000000000003C3C000000000000 47 | 00AE:003C4281ADBDB1B1B181423C000000 48 | 00AF:00007F7F0000000000000000000000 49 | 00B0:00003C7E667E3C0000000000000000 50 | 00B1:000000181818FFFF18181800FFFF00 51 | 00B2:007C7E0C307E7E0000000000000000 52 | 00B3:007E7C1C067E7C0000000000000000 53 | 00B4:00000E380000000000000000000000 54 | 00B5:0000000000666666667F7B60600000 55 | 00B6:00003F7F7B7B7B3B1B1B1B1B000000 56 | 00B7:000000000000183C18000000000000 57 | 00B8:0000000000000000000000080C1800 58 | 00B9:000818381818180000000000000000 59 | 00BA:00003C7E66667E3C007E7E00000000 60 | 00BB:000000000088CC663366CC88000000 61 | 00BC:001030703030300003070B1B1F0300 62 | 00BD:00103070303030001E1F030C1F1F00 63 | 00BE:007C78180C7C780003070B1B1F0300 64 | 00BF:00000000000C0C000C0C1830607E3E 65 | 00C0:00380E003E7F637F7F636363000000 66 | 00C1:000E38003E7F637F7F636363000000 67 | 00C2:001C36003E7F637F7F636363000000 68 | 00C3:003B6E003E7F637F7F636363000000 69 | 00C4:003636003E7F637F7F636363000000 70 | 00C5:001C361C3E7F637F7F636363000000 71 | 00C6:00003F7F6C6C7F7F6C6C6F6F000000 72 | 00C7:00003E7F6360606060637F3E0C1800 73 | 00C8:00380E007F7F607E7E607F7F000000 74 | 00C9:000E38007F7F607E7E607F7F000000 75 | 00CA:001C36007F7F607E7E607F7F000000 76 | 00CB:003636007F7F607E7E607F7F000000 77 | 00CC:00701C007E7E181818187E7E000000 78 | 00CD:000E38007E7E181818187E7E000000 79 | 00CE:001C36007E7E181818187E7E000000 80 | 00CF:003636007E7E181818187E7E000000 81 | 00D0:00007C7E6763F3F363677E7C000000 82 | 00D1:003B6E006373737B6F676763000000 83 | 00D2:00380E003E7F636363637F3E000000 84 | 00D3:000E38003E7F636363637F3E000000 85 | 00D4:001C36003E7F636363637F3E000000 86 | 00D5:003B6E003E7F636363637F3E000000 87 | 00D6:003636003E7F636363637F3E000000 88 | 00D7:000000000063361C1C366300000000 89 | 00D8:00013E7F67676B6B73737F3E400000 90 | 00D9:00380E006363636363637F3E000000 91 | 00DA:000E38006363636363637F3E000000 92 | 00DB:001C36006363636363637F3E000000 93 | 00DC:003636006363636363637F3E000000 94 | 00DD:000E38006363637F3E0C0C0C000000 95 | 00DE:000060607E7F63637F7E6060000000 96 | 00DF:00003C7E66666C6663636F6E600000 97 | 00E0:0000380E003E3F033F637F3B000000 98 | 00E1:00000E38003E3F033F637F3B000000 99 | 00E2:00001C36003E3F033F637F3B000000 100 | 00E3:00003B6E003E3F033F637F3B000000 101 | 00E4:00003636003E3F033F637F3B000000 102 | 00E5:001C361C003E3F033F637F3B000000 103 | 00E6:0000000000767F1B7FD8FE6E000000 104 | 00E7:00000000003E7F6360637F3E0C1800 105 | 00E8:0000380E003E7F637F607E3E000000 106 | 00E9:00000E38003E7F637F607E3E000000 107 | 00EA:00001C36003E7F637F607E3E000000 108 | 00EB:00003636003E7F637F607E3E000000 109 | 00EC:0000380E003C3C0C0C0C0C0C000000 110 | 00ED:00000E38003C3C0C0C0C0C0C000000 111 | 00EE:00001C36003C3C0C0C0C0C0C000000 112 | 00EF:00003636003C3C0C0C0C0C0C000000 113 | 00F0:006C38386C063E7F63637F3E000000 114 | 00F1:00003B6E006E7F6363636363000000 115 | 00F2:0000380E003E7F6363637F3E000000 116 | 00F3:00000E38003E7F6363637F3E000000 117 | 00F4:00001C36003E7F6363637F3E000000 118 | 00F5:00003B6E003E7F6363637F3E000000 119 | 00F6:00003636003E7F6363637F3E000000 120 | 00F7:00000000181800FFFF001818000000 121 | 00F8:00000000013E7F676B737F3E400000 122 | 00F9:0000380E0063636363637F3B000000 123 | 00FA:00000E380063636363637F3B000000 124 | 00FB:00001C360063636363637F3B000000 125 | 00FC:000036360063636363637F3B000000 126 | 00FD:00000E3800636363637F3B03637F3E 127 | 00FE:00006060606E7F6363637F6E606060 128 | 00FF:0000363600636363637F3B03637F3E -------------------------------------------------------------------------------- /fonts/tecate/15/neep-iso8859-15-part-08x15-bold.hex: -------------------------------------------------------------------------------- 1 | 0080:007E42424242424242424242427E00 2 | 0081:007E42424242424242424242427E00 3 | 0082:007E42424242424242424242427E00 4 | 0083:007E42424242424242424242427E00 5 | 0084:007E42424242424242424242427E00 6 | 0085:007E42424242424242424242427E00 7 | 0086:007E42424242424242424242427E00 8 | 0087:007E42424242424242424242427E00 9 | 0088:007E42424242424242424242427E00 10 | 0089:007E42424242424242424242427E00 11 | 008A:007E42424242424242424242427E00 12 | 008B:007E42424242424242424242427E00 13 | 008C:007E42424242424242424242427E00 14 | 008D:007E42424242424242424242427E00 15 | 008E:007E42424242424242424242427E00 16 | 008F:007E42424242424242424242427E00 17 | 0090:007E42424242424242424242427E00 18 | 0091:007E42424242424242424242427E00 19 | 0092:007E42424242424242424242427E00 20 | 0093:007E42424242424242424242427E00 21 | 0094:007E42424242424242424242427E00 22 | 0095:007E42424242424242424242427E00 23 | 0096:007E42424242424242424242427E00 24 | 0097:007E42424242424242424242427E00 25 | 0098:007E42424242424242424242427E00 26 | 0099:007E42424242424242424242427E00 27 | 009A:007E42424242424242424242427E00 28 | 009B:007E42424242424242424242427E00 29 | 009C:007E42424242424242424242427E00 30 | 009D:007E42424242424242424242427E00 31 | 009E:007E42424242424242424242427E00 32 | 009F:007E42424242424242424242427E00 33 | 00A0:000000000000000000000000000000 34 | 00A1:000000000018180018181818181818 35 | 00A2:000000083E7F6360637F3E08000000 36 | 00A3:00001E3F33307C7C30307F7F000000 37 | 00A4:0000003E7F61FC60F8617F3E000000 38 | 00A5:000066663C187E7E187E7E18000000 39 | 00A6:00361C003E7F63380E637F3E000000 40 | 00A7:00003E7E603C7E667E3C067E7C0000 41 | 00A8:0000361C003F7F603E037F7E000000 42 | 00A9:003C42819DBDB1BD9D81423C000000 43 | 00AA:00003C063E667E36007E7E00000000 44 | 00AB:0000000000113366CC663311000000 45 | 00AC:000000000000007F7F030300000000 46 | 00AD:000000000000003C3C000000000000 47 | 00AE:003C4281ADBDB1B1B181423C000000 48 | 00AF:00007F7F0000000000000000000000 49 | 00B0:00003C7E667E3C0000000000000000 50 | 00B1:000000181818FFFF18181800FFFF00 51 | 00B2:007C7E0C307E7E0000000000000000 52 | 00B3:007E7C1C067E7C0000000000000000 53 | 00B4:00361C007F7F060C18307F7F000000 54 | 00B5:0000000000666666667F7B60600000 55 | 00B6:00003F7F7B7B7B3B1B1B1B1B000000 56 | 00B7:000000000000183C18000000000000 57 | 00B8:0000361C007F7F061C307F7F000000 58 | 00B9:000818381818180000000000000000 59 | 00BA:00003C7E66667E3C007E7E00000000 60 | 00BB:000000000088CC663366CC88000000 61 | 00BC:00003F7F6C6C6F6F6C6C7F3F000000 62 | 00BD:000000000076FFDBDFD8FE6E000000 63 | 00BE:003636006363637F3E0C0C0C000000 64 | 00BF:00000000000C0C000C0C1830607E3E 65 | 00C0:00380E003E7F637F7F636363000000 66 | 00C1:000E38003E7F637F7F636363000000 67 | 00C2:001C36003E7F637F7F636363000000 68 | 00C3:003B6E003E7F637F7F636363000000 69 | 00C4:003636003E7F637F7F636363000000 70 | 00C5:001C361C3E7F637F7F636363000000 71 | 00C6:00003F7F6C6C7F7F6C6C6F6F000000 72 | 00C7:00003E7F6360606060637F3E0C1800 73 | 00C8:00380E007F7F607E7E607F7F000000 74 | 00C9:000E38007F7F607E7E607F7F000000 75 | 00CA:001C36007F7F607E7E607F7F000000 76 | 00CB:003636007F7F607E7E607F7F000000 77 | 00CC:00701C007E7E181818187E7E000000 78 | 00CD:000E38007E7E181818187E7E000000 79 | 00CE:001C36007E7E181818187E7E000000 80 | 00CF:003636007E7E181818187E7E000000 81 | 00D0:00007C7E6763F3F363677E7C000000 82 | 00D1:003B6E006373737B6F676763000000 83 | 00D2:00380E003E7F636363637F3E000000 84 | 00D3:000E38003E7F636363637F3E000000 85 | 00D4:001C36003E7F636363637F3E000000 86 | 00D5:003B6E003E7F636363637F3E000000 87 | 00D6:003636003E7F636363637F3E000000 88 | 00D7:000000000063361C1C366300000000 89 | 00D8:00013E7F67676B6B73737F3E400000 90 | 00D9:00380E006363636363637F3E000000 91 | 00DA:000E38006363636363637F3E000000 92 | 00DB:001C36006363636363637F3E000000 93 | 00DC:003636006363636363637F3E000000 94 | 00DD:000E38006363637F3E0C0C0C000000 95 | 00DE:000060607E7F63637F7E6060000000 96 | 00DF:00003C7E66666C6663636F6E600000 97 | 00E0:0000380E003E3F033F637F3B000000 98 | 00E1:00000E38003E3F033F637F3B000000 99 | 00E2:00001C36003E3F033F637F3B000000 100 | 00E3:00003B6E003E3F033F637F3B000000 101 | 00E4:00003636003E3F033F637F3B000000 102 | 00E5:001C361C003E3F033F637F3B000000 103 | 00E6:0000000000767F1B7FD8FE6E000000 104 | 00E7:00000000003E7F6360637F3E0C1800 105 | 00E8:0000380E003E7F637F607E3E000000 106 | 00E9:00000E38003E7F637F607E3E000000 107 | 00EA:00001C36003E7F637F607E3E000000 108 | 00EB:00003636003E7F637F607E3E000000 109 | 00EC:0000380E003C3C0C0C0C0C0C000000 110 | 00ED:00000E38003C3C0C0C0C0C0C000000 111 | 00EE:00001C36003C3C0C0C0C0C0C000000 112 | 00EF:00003636003C3C0C0C0C0C0C000000 113 | 00F0:006C38386C063E7F63637F3E000000 114 | 00F1:00003B6E006E7F6363636363000000 115 | 00F2:0000380E003E7F6363637F3E000000 116 | 00F3:00000E38003E7F6363637F3E000000 117 | 00F4:00001C36003E7F6363637F3E000000 118 | 00F5:00003B6E003E7F6363637F3E000000 119 | 00F6:00003636003E7F6363637F3E000000 120 | 00F7:00000000181800FFFF001818000000 121 | 00F8:00000000013E7F676B737F3E400000 122 | 00F9:0000380E0063636363637F3B000000 123 | 00FA:00000E380063636363637F3B000000 124 | 00FB:00001C360063636363637F3B000000 125 | 00FC:000036360063636363637F3B000000 126 | 00FD:00000E3800636363637F3B03637F3E 127 | 00FE:00006060606E7F6363637F6E606060 128 | 00FF:0000363600636363637F3B03637F3E -------------------------------------------------------------------------------- /fonts/tecate/15/neep-iso8859-2-part-08x15-bold.hex: -------------------------------------------------------------------------------- 1 | 0080:007E42424242424242424242427E00 2 | 0081:007E42424242424242424242427E00 3 | 0082:007E42424242424242424242427E00 4 | 0083:007E42424242424242424242427E00 5 | 0084:007E42424242424242424242427E00 6 | 0085:007E42424242424242424242427E00 7 | 0086:007E42424242424242424242427E00 8 | 0087:007E42424242424242424242427E00 9 | 0088:007E42424242424242424242427E00 10 | 0089:007E42424242424242424242427E00 11 | 008A:007E42424242424242424242427E00 12 | 008B:007E42424242424242424242427E00 13 | 008C:007E42424242424242424242427E00 14 | 008D:007E42424242424242424242427E00 15 | 008E:007E42424242424242424242427E00 16 | 008F:007E42424242424242424242427E00 17 | 0090:007E42424242424242424242427E00 18 | 0091:007E42424242424242424242427E00 19 | 0092:007E42424242424242424242427E00 20 | 0093:007E42424242424242424242427E00 21 | 0094:007E42424242424242424242427E00 22 | 0095:007E42424242424242424242427E00 23 | 0096:007E42424242424242424242427E00 24 | 0097:007E42424242424242424242427E00 25 | 0098:007E42424242424242424242427E00 26 | 0099:007E42424242424242424242427E00 27 | 009A:007E42424242424242424242427E00 28 | 009B:007E42424242424242424242427E00 29 | 009C:007E42424242424242424242427E00 30 | 009D:007E42424242424242424242427E00 31 | 009E:007E42424242424242424242427E00 32 | 009F:007E42424242424242424242427E00 33 | 00A0:000000000000000000000000000000 34 | 00A1:00003E7F63637F7F636363670C0600 35 | 00A2:0041633E0000000000000000000000 36 | 00A3:000060606C7870E0E0607F7F000000 37 | 00A4:00000000C3FF7E66667EFFC3000000 38 | 00A5:006C38006060606060607F7F000000 39 | 00A6:000E38003E7F63380E637F3E000000 40 | 00A7:00003E7E603C7E667E3C067E7C0000 41 | 00A8:000036360000000000000000000000 42 | 00A9:00361C003E7F63380E637F3E000000 43 | 00AA:00003E7F63703C1E07637F3E0C1800 44 | 00AB:00361C00FFFF181818181818000000 45 | 00AC:000E38007F7F060C18307F7F000000 46 | 00AD:000000000000003C3C000000000000 47 | 00AE:00361C007F7F060C18307F7F000000 48 | 00AF:000C0C007F7F060C18307F7F000000 49 | 00B0:00003C7E667E3C0000000000000000 50 | 00B1:00000000003E3F033F637F3B060300 51 | 00B2:0000000000000000000000040C0600 52 | 00B3:000018181A1E1C3838181E0E000000 53 | 00B4:00000E380000000000000000000000 54 | 00B5:00361C001818181818181E0E000000 55 | 00B6:00000E38003F7F603E037F7E000000 56 | 00B7:0000361C0000000000000000000000 57 | 00B8:0000000000000000000000080C1800 58 | 00B9:0000361C003F7F603E037F7E000000 59 | 00BA:00000000003F7F603E037F7E0C1800 60 | 00BB:00361C00307E7E3030333F1E000000 61 | 00BC:00000E38007F7F061C307F7F000000 62 | 00BD:000033660000000000000000000000 63 | 00BE:0000361C007F7F061C307F7F000000 64 | 00BF:00000C0C007F7F061C307F7F000000 65 | 00C0:000E38007E7F637E7C6E6763000000 66 | 00C1:000E38003E7F637F7F636363000000 67 | 00C2:001C36003E7F637F7F636363000000 68 | 00C3:41633E003E7F637F7F636363000000 69 | 00C4:003636003E7F637F7F636363000000 70 | 00C5:001C70006060606060607F7F000000 71 | 00C6:000E38003E7F636060637F3E000000 72 | 00C7:00003E7F6360606060637F3E0C1800 73 | 00C8:00361C003E7F636060637F3E000000 74 | 00C9:000E38007F7F607E7E607F7F000000 75 | 00CA:00007F7F60607E7E60607F7F0C0600 76 | 00CB:003636007F7F607E7E607F7F000000 77 | 00CC:00361C007F7F607E7E607F7F000000 78 | 00CD:000E38007E7E181818187E7E000000 79 | 00CE:001C36007E7E181818187E7E000000 80 | 00CF:00361C007C7E676363677E7C000000 81 | 00D0:00007C7E6763F3F363677E7C000000 82 | 00D1:000E38006373737B6F676763000000 83 | 00D2:00361C006373737B6F676763000000 84 | 00D3:000E38003E7F636363637F3E000000 85 | 00D4:001C36003E7F636363637F3E000000 86 | 00D5:003366003E7F636363637F3E000000 87 | 00D6:003636003E7F636363637F3E000000 88 | 00D7:000000000063361C1C366300000000 89 | 00D8:00361C007E7F637E7C6E6763000000 90 | 00D9:001C361C0063636363637F3E000000 91 | 00DA:000E38006363636363637F3E000000 92 | 00DB:003366006363636363637F3E000000 93 | 00DC:003636006363636363637F3E000000 94 | 00DD:000E38006363637F3E0C0C0C000000 95 | 00DE:0000FFFF18181818181818180C1800 96 | 00DF:00003C7E66666C6663636F6E600000 97 | 00E0:00000E38006E7F6360606060000000 98 | 00E1:00000E38003E3F033F637F3B000000 99 | 00E2:00001C36003E3F033F637F3B000000 100 | 00E3:0041633E003E3F033F637F3B000000 101 | 00E4:00003636003E3F033F637F3B000000 102 | 00E5:000E38001818181818181E0E000000 103 | 00E6:00000E38003E7F6360637F3E000000 104 | 00E7:00000000003E7F6360637F3E0C1800 105 | 00E8:0000361C003E7F6360637F3E000000 106 | 00E9:00000E38003E7F637F607E3E000000 107 | 00EA:00000000003E7F637F607E3E0C0600 108 | 00EB:00003636003E7F637F607E3E000000 109 | 00EC:0000361C003E7F637F607E3E000000 110 | 00ED:00000E38003C3C0C0C0C0C0C000000 111 | 00EE:00001C36003C3C0C0C0C0C0C000000 112 | 00EF:00361C03033B7F6363637F3B000000 113 | 00F0:0000061F0676FEC6C6C6FE76000000 114 | 00F1:00000E38006E7F6363636363000000 115 | 00F2:0000361C006E7F6363636363000000 116 | 00F3:00000E38003E7F6363637F3E000000 117 | 00F4:00001C36003E7F6363637F3E000000 118 | 00F5:00003366003E7F6363637F3E000000 119 | 00F6:00003636003E7F6363637F3E000000 120 | 00F7:00000000181800FFFF001818000000 121 | 00F8:0000361C006E7F6360606060000000 122 | 00F9:001C361C0063636363637F3B000000 123 | 00FA:00000E380063636363637F3B000000 124 | 00FB:000033660063636363637F3B000000 125 | 00FC:000036360063636363637F3B000000 126 | 00FD:00000E3800636363637F3B03637F3E 127 | 00FE:00000030307E7E3030333F1E0C1800 128 | 00FF:000018180000000000000000000000 -------------------------------------------------------------------------------- /fonts/tecate/15/neep-iso8859-9-part-08x15-bold.hex: -------------------------------------------------------------------------------- 1 | 0080:007E42424242424242424242427E00 2 | 0081:007E42424242424242424242427E00 3 | 0082:007E42424242424242424242427E00 4 | 0083:007E42424242424242424242427E00 5 | 0084:007E42424242424242424242427E00 6 | 0085:007E42424242424242424242427E00 7 | 0086:007E42424242424242424242427E00 8 | 0087:007E42424242424242424242427E00 9 | 0088:007E42424242424242424242427E00 10 | 0089:007E42424242424242424242427E00 11 | 008A:007E42424242424242424242427E00 12 | 008B:007E42424242424242424242427E00 13 | 008C:007E42424242424242424242427E00 14 | 008D:007E42424242424242424242427E00 15 | 008E:007E42424242424242424242427E00 16 | 008F:007E42424242424242424242427E00 17 | 0090:007E42424242424242424242427E00 18 | 0091:007E42424242424242424242427E00 19 | 0092:007E42424242424242424242427E00 20 | 0093:007E42424242424242424242427E00 21 | 0094:007E42424242424242424242427E00 22 | 0095:007E42424242424242424242427E00 23 | 0096:007E42424242424242424242427E00 24 | 0097:007E42424242424242424242427E00 25 | 0098:007E42424242424242424242427E00 26 | 0099:007E42424242424242424242427E00 27 | 009A:007E42424242424242424242427E00 28 | 009B:007E42424242424242424242427E00 29 | 009C:007E42424242424242424242427E00 30 | 009D:007E42424242424242424242427E00 31 | 009E:007E42424242424242424242427E00 32 | 009F:007E42424242424242424242427E00 33 | 00A0:000000000000000000000000000000 34 | 00A1:000000000018180018181818181818 35 | 00A2:000000083E7F6360637F3E08000000 36 | 00A3:00001E3F33307C7C30307F7F000000 37 | 00A4:00000000C3FF7E66667EFFC3000000 38 | 00A5:000066663C187E7E187E7E18000000 39 | 00A6:000018181818180018181818180000 40 | 00A7:00003E7E603C7E667E3C067E7C0000 41 | 00A8:000036360000000000000000000000 42 | 00A9:003C42819DBDB1BD9D81423C000000 43 | 00AA:00003C063E667E36007E7E00000000 44 | 00AB:0000000000113366CC663311000000 45 | 00AC:000000000000007F7F030300000000 46 | 00AD:000000000000003C3C000000000000 47 | 00AE:003C4281ADBDB1B1B181423C000000 48 | 00AF:00007F7F0000000000000000000000 49 | 00B0:00003C7E667E3C0000000000000000 50 | 00B1:000000181818FFFF18181800FFFF00 51 | 00B2:007C7E0C307E7E0000000000000000 52 | 00B3:007E7C1C067E7C0000000000000000 53 | 00B4:00000E380000000000000000000000 54 | 00B5:0000000000666666667F7B60600000 55 | 00B6:00003F7F7B7B7B3B1B1B1B1B000000 56 | 00B7:000000000000183C18000000000000 57 | 00B8:0000000000000000000000080C1800 58 | 00B9:000818381818180000000000000000 59 | 00BA:00003C7E66667E3C007E7E00000000 60 | 00BB:000000000088CC663366CC88000000 61 | 00BC:001030703030300003070B1B1F0300 62 | 00BD:00103070303030001E1F030C1F1F00 63 | 00BE:007C78180C7C780003070B1B1F0300 64 | 00BF:00000000000C0C000C0C1830607E3E 65 | 00C0:00380E003E7F637F7F636363000000 66 | 00C1:000E38003E7F637F7F636363000000 67 | 00C2:001C36003E7F637F7F636363000000 68 | 00C3:003B6E003E7F637F7F636363000000 69 | 00C4:003636003E7F637F7F636363000000 70 | 00C5:001C361C3E7F637F7F636363000000 71 | 00C6:00003F7F6C6C7F7F6C6C6F6F000000 72 | 00C7:00003E7F6360606060637F3E0C1800 73 | 00C8:00380E007F7F607E7E607F7F000000 74 | 00C9:000E38007F7F607E7E607F7F000000 75 | 00CA:001C36007F7F607E7E607F7F000000 76 | 00CB:003636007F7F607E7E607F7F000000 77 | 00CC:00701C007E7E181818187E7E000000 78 | 00CD:000E38007E7E181818187E7E000000 79 | 00CE:001C36007E7E181818187E7E000000 80 | 00CF:003636007E7E181818187E7E000000 81 | 00D0:41633E003E7F606F6F637F3F000000 82 | 00D1:003B6E006373737B6F676763000000 83 | 00D2:00380E003E7F636363637F3E000000 84 | 00D3:000E38003E7F636363637F3E000000 85 | 00D4:001C36003E7F636363637F3E000000 86 | 00D5:003B6E003E7F636363637F3E000000 87 | 00D6:003636003E7F636363637F3E000000 88 | 00D7:000000000063361C1C366300000000 89 | 00D8:00013E7F67676B6B73737F3E400000 90 | 00D9:00380E006363636363637F3E000000 91 | 00DA:000E38006363636363637F3E000000 92 | 00DB:001C36006363636363637F3E000000 93 | 00DC:003636006363636363637F3E000000 94 | 00DD:001818007E7E181818187E7E000000 95 | 00DE:00003E7F63703C1E07637F3E0C1800 96 | 00DF:00003C7E66666C6663636F6E600000 97 | 00E0:0000380E003E3F033F637F3B000000 98 | 00E1:00000E38003E3F033F637F3B000000 99 | 00E2:00001C36003E3F033F637F3B000000 100 | 00E3:00003B6E003E3F033F637F3B000000 101 | 00E4:00003636003E3F033F637F3B000000 102 | 00E5:001C361C003E3F033F637F3B000000 103 | 00E6:0000000000767F1B7FD8FE6E000000 104 | 00E7:00000000003E7F6360637F3E0C1800 105 | 00E8:0000380E003E7F637F607E3E000000 106 | 00E9:00000E38003E7F637F607E3E000000 107 | 00EA:00001C36003E7F637F607E3E000000 108 | 00EB:00003636003E7F637F607E3E000000 109 | 00EC:0000380E003C3C0C0C0C0C0C000000 110 | 00ED:00000E38003C3C0C0C0C0C0C000000 111 | 00EE:00001C36003C3C0C0C0C0C0C000000 112 | 00EF:00003636003C3C0C0C0C0C0C000000 113 | 00F0:0041633E003B7F63637F3B03637F3E 114 | 00F1:00003B6E006E7F6363636363000000 115 | 00F2:0000380E003E7F6363637F3E000000 116 | 00F3:00000E38003E7F6363637F3E000000 117 | 00F4:00001C36003E7F6363637F3E000000 118 | 00F5:00003B6E003E7F6363637F3E000000 119 | 00F6:00003636003E7F6363637F3E000000 120 | 00F7:00000000181800FFFF001818000000 121 | 00F8:00000000013E7F676B737F3E400000 122 | 00F9:0000380E0063636363637F3B000000 123 | 00FA:00000E380063636363637F3B000000 124 | 00FB:00001C360063636363637F3B000000 125 | 00FC:000036360063636363637F3B000000 126 | 00FD:00000000003C3C0C0C0C0C0C000000 127 | 00FE:00000000003F7F603E037F7E0C1800 128 | 00FF:0000666600666666667E3606667E3C -------------------------------------------------------------------------------- /fonts/tecate/9/Tamzen5x9b.hex: -------------------------------------------------------------------------------- 1 | 0002:50A850A850A850A850 2 | 0007:000060D06000000000 3 | 000B:20202020E000000000 4 | 000C:00000000E020202020 5 | 000D:000000003820202020 6 | 000E:202020203800000000 7 | 000F:20202020F820202020 8 | 0012:00000000F800000000 9 | 0015:202020203820202020 10 | 0016:20202020E020202020 11 | 0017:20202020F800000000 12 | 0018:00000000F820202020 13 | 0019:202020202020202020 14 | 001E:003060F06060F00000 15 | 0020:000000000000000000 16 | 0021:006060606000600000 17 | 0022:00F0F0A00000000000 18 | 0023:0050F050F0F0500000 19 | 0024:002020706030F04040 20 | 0025:0080903060C0901000 21 | 0026:0060D060D8D0E80000 22 | 0027:006060600000000000 23 | 0028:003060C0C0C0603000 24 | 0029:00C06030303060C000 25 | 002A:0020F060E0A0000000 26 | 002B:00006060F860600000 27 | 002C:00000000006060C000 28 | 002D:00000000F000000000 29 | 002E:000000000060600000 30 | 002F:000030306060C0C000 31 | 0030:000060D0D0D0600000 32 | 0031:000060E06060F00000 33 | 0032:0000E03060C0F00000 34 | 0033:0000E0306030E00000 35 | 0034:00003070B0F0300000 36 | 0035:0000F0C0E030E00000 37 | 0036:000060C0E0D0600000 38 | 0037:0000F03060C0C00000 39 | 0038:000060D060D0600000 40 | 0039:000060D07030600000 41 | 003A:000060600060600000 42 | 003B:00006060006060C000 43 | 003C:00003060C060300000 44 | 003D:000000F000F0000000 45 | 003E:0000C0603060C00000 46 | 003F:0060B0306000600000 47 | 0040:0060D0D0D0C0C07000 48 | 0041:00002070B0F0B00000 49 | 0042:0000E0D0E0D0E00000 50 | 0043:000070C0C0C0700000 51 | 0044:0000E0D0D0D0E00000 52 | 0045:0000F0C0E0C0F00000 53 | 0046:0000F0C0E0C0C00000 54 | 0047:000070C0D0D0700000 55 | 0048:0000D0D0F0D0D00000 56 | 0049:0000F0606060F00000 57 | 004A:0000303030B0600000 58 | 004B:0000D0D0E0D0D00000 59 | 004C:0000C0C0C0C0F00000 60 | 004D:000090F0F090900000 61 | 004E:0000D0D0F0B0B00000 62 | 004F:000060D0D0D0600000 63 | 0050:0000E0D0E0C0C00000 64 | 0051:000060D0D0D0603000 65 | 0052:0000E0D0E0E0D00000 66 | 0053:000070C06030E00000 67 | 0054:0000F0606060600000 68 | 0055:0000D0D0D0D0600000 69 | 0056:0000D0D0D0E0400000 70 | 0057:00009090F0F0900000 71 | 0058:0000D0606060D00000 72 | 0059:0000D0D06060600000 73 | 005A:0000F03060C0F00000 74 | 005B:007060606060607000 75 | 005C:0000C0C06060303000 76 | 005D:00E06060606060E000 77 | 005E:0040E0A00000000000 78 | 005F:00000000000000F800 79 | 0060:0080C0602000000000 80 | 0061:00000070B0B0700000 81 | 0062:00C0C0E0D0D0E00000 82 | 0063:00000070C0C0700000 83 | 0064:00303070B0B0700000 84 | 0065:00000070B0E0700000 85 | 0066:003060F06060600000 86 | 0067:00000070D0D0703060 87 | 0068:00C0C0E0D0D0D00000 88 | 0069:006000E06060F00000 89 | 006A:0030007030303030E0 90 | 006B:00C0C0D0E0D0D00000 91 | 006C:00E060606060F00000 92 | 006D:000000D0F0D0D00000 93 | 006E:000000E0D0D0D00000 94 | 006F:00000060D0D0600000 95 | 0070:000000E0D0D0E0C0C0 96 | 0071:00000070B0B0703030 97 | 0072:000000F0C0C0C00000 98 | 0073:000000706030F00000 99 | 0074:000060F06060700000 100 | 0075:000000D0D0D0600000 101 | 0076:000000D0D0E0400000 102 | 0077:000000D0D0F0D00000 103 | 0078:000000D06060D00000 104 | 0079:000000D0D0D0703060 105 | 007A:000000F060C0F00000 106 | 007B:00383030F030303800 107 | 007C:006060606060606000 108 | 007D:00E06060786060E000 109 | 007E:0050F0A00000000000 110 | 00A0:000000000000000000 111 | 00A1:000000600060606060 112 | 00A2:002070C0C070200000 113 | 00A3:003060F06060F00000 114 | 00A4:00D060D0D060D00000 115 | 00A5:0000D060F060600000 116 | 00A6:006060600060606000 117 | 00A8:00A000000000000000 118 | 00A9:00006090B090600000 119 | 00AB:0000000048D8480000 120 | 00AD:00000000F000000000 121 | 00B0:000060D06000000000 122 | 00B4:001020000000000000 123 | 00B8:000000000000002060 124 | 00BB:0000000090D8900000 125 | 00BF:000000600060C0D060 126 | 00C0:00402070B0F0B00000 127 | 00C1:00102070B0F0B00000 128 | 00C2:20500070B0F0B00000 129 | 00C3:D0B00070B0F0B00000 130 | 00C4:90002070B0F0B00000 131 | 00C5:0060B060B0F0B00000 132 | 00C6:000070A0F0A0B00000 133 | 00C7:000070C0C0C0702060 134 | 00C8:8040F0C0E0C0F00000 135 | 00C9:1020F0C0E0C0F00000 136 | 00CA:40A0F0C0E0C0F00000 137 | 00CB:A000F0C0E0C0F00000 138 | 00CC:8040F0606060F00000 139 | 00CD:1020F0606060F00000 140 | 00CE:40A0F0606060F00000 141 | 00CF:A000F0606060F00000 142 | 00D0:0000E050D050E00000 143 | 00D1:D0B000D0F0B0B00000 144 | 00D2:804060D0D0D0600000 145 | 00D3:102060D0D0D0600000 146 | 00D4:40A060D0D0D0600000 147 | 00D5:D0B00060D0D0600000 148 | 00D6:A00060D0D0D0600000 149 | 00D7:000000D060D0000000 150 | 00D8:001060D0D0D0608000 151 | 00D9:8040D0D0D0D0600000 152 | 00DA:2040D0D0D0D0600000 153 | 00DB:40A0D0D0D0D0600000 154 | 00DC:A000D0D0D0D0600000 155 | 00DD:2040D0D06060600000 156 | 00DE:0000C0E0D0E0C00000 157 | 00DF:000070D0E0D0E00000 158 | 00E0:00804070B0B0700000 159 | 00E1:00102070B0B0700000 160 | 00E2:40A00070B0B0700000 161 | 00E3:D0B00070B0B0700000 162 | 00E4:00A00070B0B0700000 163 | 00E5:0060B060B0B0700000 164 | 00E6:000000F070A0F00000 165 | 00E7:00000070C0C0702060 166 | 00E8:00804070B0E0700000 167 | 00E9:00102070B0E0700000 168 | 00EA:40A00070B0E0700000 169 | 00EB:00A00070B0E0700000 170 | 00EC:008040E06060F00000 171 | 00ED:001020E06060F00000 172 | 00EE:40A000E06060F00000 173 | 00EF:00A000E06060F00000 174 | 00F0:40F02060B0B0600000 175 | 00F1:D0B000E0D0D0D00000 176 | 00F2:00804060D0D0600000 177 | 00F3:00102060D0D0600000 178 | 00F4:40A00060D0D0600000 179 | 00F5:D0B00060D0D0600000 180 | 00F6:00A00060D0D0600000 181 | 00F7:00006000F000600000 182 | 00F8:00001060D0D0608000 183 | 00F9:008040D0D0D0600000 184 | 00FA:002040D0D0D0600000 185 | 00FB:40A000D0D0D0600000 186 | 00FC:00A000D0D0D0600000 187 | 00FD:002040D0D0D0703060 188 | 00FE:00C0C0E0D0D0E0C0C0 189 | 00FF:00A000D0D0D0703060 -------------------------------------------------------------------------------- /fonts/tecate/9/Tamzen5x9r.hex: -------------------------------------------------------------------------------- 1 | 0002:50A850A850A850A850 2 | 0007:000060906000000000 3 | 000B:20202020E000000000 4 | 000C:00000000E020202020 5 | 000D:000000003820202020 6 | 000E:202020203800000000 7 | 000F:20202020F820202020 8 | 0012:00000000F800000000 9 | 0015:202020203820202020 10 | 0016:20202020E020202020 11 | 0017:20202020F800000000 12 | 0018:00000000F820202020 13 | 0019:202020202020202020 14 | 001E:003040E04040F00000 15 | 0020:000000000000000000 16 | 0021:004040404000400000 17 | 0022:005050500000000000 18 | 0023:0050F050A0F0A00000 19 | 0024:002070806010E04000 20 | 0025:00C0D02040B0300000 21 | 0026:0060A040B0A0D00000 22 | 0027:002020200000000000 23 | 0028:001020404040402010 24 | 0029:008040202020204080 25 | 002A:000020F06090000000 26 | 002B:00002020F820200000 27 | 002C:000000000000602040 28 | 002D:00000000F000000000 29 | 002E:000000000000600000 30 | 002F:000020204040808000 31 | 0030:000060909090600000 32 | 0031:000020602020700000 33 | 0032:0000E0102040F00000 34 | 0033:0000F0206010E00000 35 | 0034:00002060A0F0200000 36 | 0035:0000F080E010E00000 37 | 0036:00006080E090600000 38 | 0037:0000F0202040400000 39 | 0038:000060906090600000 40 | 0039:000060907010600000 41 | 003A:000000600000600000 42 | 003B:000000600000602040 43 | 003C:000010204020100000 44 | 003D:000000F000F0000000 45 | 003E:000040201020400000 46 | 003F:00E010204000400000 47 | 0040:006090B0B080807000 48 | 0041:00006090F090900000 49 | 0042:0000E090E090E00000 50 | 0043:000070808080700000 51 | 0044:0000E0909090E00000 52 | 0045:0000F080E080F00000 53 | 0046:0000F080E080800000 54 | 0047:00007080B090700000 55 | 0048:00009090F090900000 56 | 0049:000070202020700000 57 | 004A:000010101090600000 58 | 004B:000090A0C0A0900000 59 | 004C:000080808080F00000 60 | 004D:000090F09090900000 61 | 004E:000090D0B090900000 62 | 004F:000060909090600000 63 | 0050:0000E090E080800000 64 | 0051:000060909090603000 65 | 0052:0000E090E0A0900000 66 | 0053:000070806010E00000 67 | 0054:0000F8202020200000 68 | 0055:000090909090700000 69 | 0056:000090909060600000 70 | 0057:0000909090F0900000 71 | 0058:000090906090900000 72 | 0059:000088502020200000 73 | 005A:0000F0204080F00000 74 | 005B:007040404040404070 75 | 005C:000080804040202000 76 | 005D:00E0202020202020E0 77 | 005E:000020500000000000 78 | 005F:00000000000000F800 79 | 0060:004020100000000000 80 | 0061:000000709090700000 81 | 0062:008080E09090E00000 82 | 0063:000000608080600000 83 | 0064:001010709090700000 84 | 0065:00000070A0C0700000 85 | 0066:003040F04040400000 86 | 0067:000000709090701060 87 | 0068:008080E09090900000 88 | 0069:002000602020700000 89 | 006A:0020006020202020C0 90 | 006B:008080A0C0A0900000 91 | 006C:006020202020700000 92 | 006D:000000B0F090900000 93 | 006E:000000E09090900000 94 | 006F:000000609090600000 95 | 0070:000000E09090E08080 96 | 0071:000000709090701010 97 | 0072:000000B0C080800000 98 | 0073:000000704020F00000 99 | 0074:000040F04040300000 100 | 0075:000000909090700000 101 | 0076:000000909060600000 102 | 0077:0000009090F0F00000 103 | 0078:000000906060900000 104 | 0079:000000909090602040 105 | 007A:000000F02040F00000 106 | 007B:00302020E020203000 107 | 007C:002020202020202000 108 | 007D:00C04040704040C000 109 | 007E:0000D0B00000000000 110 | 00A0:000000000000000000 111 | 00A1:000000400040404040 112 | 00A2:002070A0A070200000 113 | 00A3:003040E04040F00000 114 | 00A4:009060909060900000 115 | 00A5:00885020F820200000 116 | 00A6:002020200020202000 117 | 00A8:005000000000000000 118 | 00A9:00006090B090600000 119 | 00AB:000000004890480000 120 | 00AD:00000000F000000000 121 | 00B0:000060906000000000 122 | 00B4:001020000000000000 123 | 00B8:000000000000002060 124 | 00BB:000000009048900000 125 | 00BF:000000200020408070 126 | 00C0:0040203050F0900000 127 | 00C1:0020403050F0900000 128 | 00C2:0040A03050F0900000 129 | 00C3:00D0B02050F0900000 130 | 00C4:0050003050F0900000 131 | 00C5:0030502050F0900000 132 | 00C6:000070A0F0A0B00000 133 | 00C7:000070808080702060 134 | 00C8:4020F080E080F00000 135 | 00C9:1020F080E080F00000 136 | 00CA:2050F080E080F00000 137 | 00CB:5000F080E080F00000 138 | 00CC:402070202020700000 139 | 00CD:102070202020700000 140 | 00CE:205000702020700000 141 | 00CF:500070202020700000 142 | 00D0:0000E050D050E00000 143 | 00D1:D0B00090D0B0900000 144 | 00D2:804060909090600000 145 | 00D3:102060909090600000 146 | 00D4:40A000609090600000 147 | 00D5:D0B000609090600000 148 | 00D6:900060909090600000 149 | 00D7:000000502050000000 150 | 00D8:001060909090608000 151 | 00D9:804090909090600000 152 | 00DA:102090909090600000 153 | 00DB:40A000909090600000 154 | 00DC:A00090909090600000 155 | 00DD:402088502020200000 156 | 00DE:000080E090E0800000 157 | 00DF:00007090A090A00000 158 | 00E0:008040709090700000 159 | 00E1:001020709090700000 160 | 00E2:205000709090700000 161 | 00E3:D0B000709090700000 162 | 00E4:005000709090700000 163 | 00E5:305020709090700000 164 | 00E6:000000F070A0F00000 165 | 00E7:0000006080806040C0 166 | 00E8:00804070A0C0700000 167 | 00E9:00102070A0C0700000 168 | 00EA:20500070A0C0700000 169 | 00EB:00500070A0C0700000 170 | 00EC:004020602020700000 171 | 00ED:001020602020700000 172 | 00EE:205000602020700000 173 | 00EF:005000602020700000 174 | 00F0:40F020609090600000 175 | 00F1:D0B000E09090900000 176 | 00F2:008040609090600000 177 | 00F3:001020609090600000 178 | 00F4:40A000609090600000 179 | 00F5:D0B000609090600000 180 | 00F6:009000609090600000 181 | 00F7:000020007000200000 182 | 00F8:000010609090608000 183 | 00F9:008040909090600000 184 | 00FA:001020909090600000 185 | 00FB:40A000909090600000 186 | 00FC:00A000909090600000 187 | 00FD:001020909090701060 188 | 00FE:008080E09090E08080 189 | 00FF:00A000909090701060 -------------------------------------------------------------------------------- /fonts/tecate/9/TamzenForPowerline5x9b.hex: -------------------------------------------------------------------------------- 1 | 0002:50A850A850A850A850 2 | 0007:000060D06000000000 3 | 000B:20202020E000000000 4 | 000C:00000000E020202020 5 | 000D:000000003820202020 6 | 000E:202020203800000000 7 | 000F:20202020F820202020 8 | 0012:00000000F800000000 9 | 0015:202020203820202020 10 | 0016:20202020E020202020 11 | 0017:20202020F800000000 12 | 0018:00000000F820202020 13 | 0019:202020202020202020 14 | 001E:003060F06060F00000 15 | 0020:000000000000000000 16 | 0021:006060606000600000 17 | 0022:00F0F0A00000000000 18 | 0023:0050F050F0F0500000 19 | 0024:002020706030F04040 20 | 0025:0080903060C0901000 21 | 0026:0060D060D8D0E80000 22 | 0027:006060600000000000 23 | 0028:003060C0C0C0603000 24 | 0029:00C06030303060C000 25 | 002A:0020F060E0A0000000 26 | 002B:00006060F860600000 27 | 002C:00000000006060C000 28 | 002D:00000000F000000000 29 | 002E:000000000060600000 30 | 002F:000030306060C0C000 31 | 0030:000060D0D0D0600000 32 | 0031:000060E06060F00000 33 | 0032:0000E03060C0F00000 34 | 0033:0000E0306030E00000 35 | 0034:00003070B0F0300000 36 | 0035:0000F0C0E030E00000 37 | 0036:000060C0E0D0600000 38 | 0037:0000F03060C0C00000 39 | 0038:000060D060D0600000 40 | 0039:000060D07030600000 41 | 003A:000060600060600000 42 | 003B:00006060006060C000 43 | 003C:00003060C060300000 44 | 003D:000000F000F0000000 45 | 003E:0000C0603060C00000 46 | 003F:0060B0306000600000 47 | 0040:0060D0D0D0C0C07000 48 | 0041:00002070B0F0B00000 49 | 0042:0000E0D0E0D0E00000 50 | 0043:000070C0C0C0700000 51 | 0044:0000E0D0D0D0E00000 52 | 0045:0000F0C0E0C0F00000 53 | 0046:0000F0C0E0C0C00000 54 | 0047:000070C0D0D0700000 55 | 0048:0000D0D0F0D0D00000 56 | 0049:0000F0606060F00000 57 | 004A:0000303030B0600000 58 | 004B:0000D0D0E0D0D00000 59 | 004C:0000C0C0C0C0F00000 60 | 004D:000090F0F090900000 61 | 004E:0000D0D0F0B0B00000 62 | 004F:000060D0D0D0600000 63 | 0050:0000E0D0E0C0C00000 64 | 0051:000060D0D0D0603000 65 | 0052:0000E0D0E0E0D00000 66 | 0053:000070C06030E00000 67 | 0054:0000F0606060600000 68 | 0055:0000D0D0D0D0600000 69 | 0056:0000D0D0D0E0400000 70 | 0057:00009090F0F0900000 71 | 0058:0000D0606060D00000 72 | 0059:0000D0D06060600000 73 | 005A:0000F03060C0F00000 74 | 005B:007060606060607000 75 | 005C:0000C0C06060303000 76 | 005D:00E06060606060E000 77 | 005E:0040E0A00000000000 78 | 005F:00000000000000F800 79 | 0060:0080C0602000000000 80 | 0061:00000070B0B0700000 81 | 0062:00C0C0E0D0D0E00000 82 | 0063:00000070C0C0700000 83 | 0064:00303070B0B0700000 84 | 0065:00000070B0E0700000 85 | 0066:003060F06060600000 86 | 0067:00000070D0D0703060 87 | 0068:00C0C0E0D0D0D00000 88 | 0069:006000E06060F00000 89 | 006A:0030007030303030E0 90 | 006B:00C0C0D0E0D0D00000 91 | 006C:00E060606060F00000 92 | 006D:000000D0F0D0D00000 93 | 006E:000000E0D0D0D00000 94 | 006F:00000060D0D0600000 95 | 0070:000000E0D0D0E0C0C0 96 | 0071:00000070B0B0703030 97 | 0072:000000F0C0C0C00000 98 | 0073:000000706030F00000 99 | 0074:000060F06060700000 100 | 0075:000000D0D0D0600000 101 | 0076:000000D0D0E0400000 102 | 0077:000000D0D0F0D00000 103 | 0078:000000D06060D00000 104 | 0079:000000D0D0D0703060 105 | 007A:000000F060C0F00000 106 | 007B:00383030F030303800 107 | 007C:006060606060606000 108 | 007D:00E06060786060E000 109 | 007E:0050F0A00000000000 110 | 00A0:000000000000000000 111 | 00A1:000000600060606060 112 | 00A2:002070C0C070200000 113 | 00A3:003060F06060F00000 114 | 00A4:00D060D0D060D00000 115 | 00A5:0000D060F060600000 116 | 00A6:006060600060606000 117 | 00A8:00A000000000000000 118 | 00A9:00006090B090600000 119 | 00AB:0000000048D8480000 120 | 00AD:00000000F000000000 121 | 00B0:000060D06000000000 122 | 00B4:001020000000000000 123 | 00B8:000000000000002060 124 | 00BB:0000000090D8900000 125 | 00BF:000000600060C0D060 126 | 00C0:00402070B0F0B00000 127 | 00C1:00102070B0F0B00000 128 | 00C2:20500070B0F0B00000 129 | 00C3:D0B00070B0F0B00000 130 | 00C4:90002070B0F0B00000 131 | 00C5:0060B060B0F0B00000 132 | 00C6:000070A0F0A0B00000 133 | 00C7:000070C0C0C0702060 134 | 00C8:8040F0C0E0C0F00000 135 | 00C9:1020F0C0E0C0F00000 136 | 00CA:40A0F0C0E0C0F00000 137 | 00CB:A000F0C0E0C0F00000 138 | 00CC:8040F0606060F00000 139 | 00CD:1020F0606060F00000 140 | 00CE:40A0F0606060F00000 141 | 00CF:A000F0606060F00000 142 | 00D0:0000E050D050E00000 143 | 00D1:D0B000D0F0B0B00000 144 | 00D2:804060D0D0D0600000 145 | 00D3:102060D0D0D0600000 146 | 00D4:40A060D0D0D0600000 147 | 00D5:D0B00060D0D0600000 148 | 00D6:A00060D0D0D0600000 149 | 00D7:000000D060D0000000 150 | 00D8:001060D0D0D0608000 151 | 00D9:8040D0D0D0D0600000 152 | 00DA:2040D0D0D0D0600000 153 | 00DB:40A0D0D0D0D0600000 154 | 00DC:A000D0D0D0D0600000 155 | 00DD:2040D0D06060600000 156 | 00DE:0000C0E0D0E0C00000 157 | 00DF:000070D0E0D0E00000 158 | 00E0:00804070B0B0700000 159 | 00E1:00102070B0B0700000 160 | 00E2:40A00070B0B0700000 161 | 00E3:D0B00070B0B0700000 162 | 00E4:00A00070B0B0700000 163 | 00E5:0060B060B0B0700000 164 | 00E6:000000F070A0F00000 165 | 00E7:00000070C0C0702060 166 | 00E8:00804070B0E0700000 167 | 00E9:00102070B0E0700000 168 | 00EA:40A00070B0E0700000 169 | 00EB:00A00070B0E0700000 170 | 00EC:008040E06060F00000 171 | 00ED:001020E06060F00000 172 | 00EE:40A000E06060F00000 173 | 00EF:00A000E06060F00000 174 | 00F0:40F02060B0B0600000 175 | 00F1:D0B000E0D0D0D00000 176 | 00F2:00804060D0D0600000 177 | 00F3:00102060D0D0600000 178 | 00F4:40A00060D0D0600000 179 | 00F5:D0B00060D0D0600000 180 | 00F6:00A00060D0D0600000 181 | 00F7:00006000F000600000 182 | 00F8:00001060D0D0608000 183 | 00F9:008040D0D0D0600000 184 | 00FA:002040D0D0D0600000 185 | 00FB:40A000D0D0D0600000 186 | 00FC:00A000D0D0D0600000 187 | 00FD:002040D0D0D0703060 188 | 00FE:00C0C0E0D0D0E0C0C0 189 | 00FF:00A000D0D0D0703060 190 | E0A0:8090B890903060C0C0 191 | E0A1:808080E00048685848 192 | E0A2:20505050F8E8D8A8F8 193 | E0B0:80C0E0F0F8F0E0C080 194 | E0B1:804020100810204080 195 | E0B2:08183878F878381808 196 | E0B3:081020408040201008 -------------------------------------------------------------------------------- /fonts/tecate/9/TamzenForPowerline5x9r.hex: -------------------------------------------------------------------------------- 1 | 0002:50A850A850A850A850 2 | 0007:000060906000000000 3 | 000B:20202020E000000000 4 | 000C:00000000E020202020 5 | 000D:000000003820202020 6 | 000E:202020203800000000 7 | 000F:20202020F820202020 8 | 0012:00000000F800000000 9 | 0015:202020203820202020 10 | 0016:20202020E020202020 11 | 0017:20202020F800000000 12 | 0018:00000000F820202020 13 | 0019:202020202020202020 14 | 001E:003040E04040F00000 15 | 0020:000000000000000000 16 | 0021:004040404000400000 17 | 0022:005050500000000000 18 | 0023:0050F050A0F0A00000 19 | 0024:002070806010E04000 20 | 0025:00C0D02040B0300000 21 | 0026:0060A040B0A0D00000 22 | 0027:002020200000000000 23 | 0028:001020404040402010 24 | 0029:008040202020204080 25 | 002A:000020F06090000000 26 | 002B:00002020F820200000 27 | 002C:000000000000602040 28 | 002D:00000000F000000000 29 | 002E:000000000000600000 30 | 002F:000020204040808000 31 | 0030:000060909090600000 32 | 0031:000020602020700000 33 | 0032:0000E0102040F00000 34 | 0033:0000F0206010E00000 35 | 0034:00002060A0F0200000 36 | 0035:0000F080E010E00000 37 | 0036:00006080E090600000 38 | 0037:0000F0202040400000 39 | 0038:000060906090600000 40 | 0039:000060907010600000 41 | 003A:000000600000600000 42 | 003B:000000600000602040 43 | 003C:000010204020100000 44 | 003D:000000F000F0000000 45 | 003E:000040201020400000 46 | 003F:00E010204000400000 47 | 0040:006090B0B080807000 48 | 0041:00006090F090900000 49 | 0042:0000E090E090E00000 50 | 0043:000070808080700000 51 | 0044:0000E0909090E00000 52 | 0045:0000F080E080F00000 53 | 0046:0000F080E080800000 54 | 0047:00007080B090700000 55 | 0048:00009090F090900000 56 | 0049:000070202020700000 57 | 004A:000010101090600000 58 | 004B:000090A0C0A0900000 59 | 004C:000080808080F00000 60 | 004D:000090F09090900000 61 | 004E:000090D0B090900000 62 | 004F:000060909090600000 63 | 0050:0000E090E080800000 64 | 0051:000060909090603000 65 | 0052:0000E090E0A0900000 66 | 0053:000070806010E00000 67 | 0054:0000F8202020200000 68 | 0055:000090909090700000 69 | 0056:000090909060600000 70 | 0057:0000909090F0900000 71 | 0058:000090906090900000 72 | 0059:000088502020200000 73 | 005A:0000F0204080F00000 74 | 005B:007040404040404070 75 | 005C:000080804040202000 76 | 005D:00E0202020202020E0 77 | 005E:000020500000000000 78 | 005F:00000000000000F800 79 | 0060:004020100000000000 80 | 0061:000000709090700000 81 | 0062:008080E09090E00000 82 | 0063:000000608080600000 83 | 0064:001010709090700000 84 | 0065:00000070A0C0700000 85 | 0066:003040F04040400000 86 | 0067:000000709090701060 87 | 0068:008080E09090900000 88 | 0069:002000602020700000 89 | 006A:0020006020202020C0 90 | 006B:008080A0C0A0900000 91 | 006C:006020202020700000 92 | 006D:000000B0F090900000 93 | 006E:000000E09090900000 94 | 006F:000000609090600000 95 | 0070:000000E09090E08080 96 | 0071:000000709090701010 97 | 0072:000000B0C080800000 98 | 0073:000000704020F00000 99 | 0074:000040F04040300000 100 | 0075:000000909090700000 101 | 0076:000000909060600000 102 | 0077:0000009090F0F00000 103 | 0078:000000906060900000 104 | 0079:000000909090602040 105 | 007A:000000F02040F00000 106 | 007B:00302020E020203000 107 | 007C:002020202020202000 108 | 007D:00C04040704040C000 109 | 007E:0000D0B00000000000 110 | 00A0:000000000000000000 111 | 00A1:000000400040404040 112 | 00A2:002070A0A070200000 113 | 00A3:003040E04040F00000 114 | 00A4:009060909060900000 115 | 00A5:00885020F820200000 116 | 00A6:002020200020202000 117 | 00A8:005000000000000000 118 | 00A9:00006090B090600000 119 | 00AB:000000004890480000 120 | 00AD:00000000F000000000 121 | 00B0:000060906000000000 122 | 00B4:001020000000000000 123 | 00B8:000000000000002060 124 | 00BB:000000009048900000 125 | 00BF:000000200020408070 126 | 00C0:0040203050F0900000 127 | 00C1:0020403050F0900000 128 | 00C2:0040A03050F0900000 129 | 00C3:00D0B02050F0900000 130 | 00C4:0050003050F0900000 131 | 00C5:0030502050F0900000 132 | 00C6:000070A0F0A0B00000 133 | 00C7:000070808080702060 134 | 00C8:4020F080E080F00000 135 | 00C9:1020F080E080F00000 136 | 00CA:2050F080E080F00000 137 | 00CB:5000F080E080F00000 138 | 00CC:402070202020700000 139 | 00CD:102070202020700000 140 | 00CE:205000702020700000 141 | 00CF:500070202020700000 142 | 00D0:0000E050D050E00000 143 | 00D1:D0B00090D0B0900000 144 | 00D2:804060909090600000 145 | 00D3:102060909090600000 146 | 00D4:40A000609090600000 147 | 00D5:D0B000609090600000 148 | 00D6:900060909090600000 149 | 00D7:000000502050000000 150 | 00D8:001060909090608000 151 | 00D9:804090909090600000 152 | 00DA:102090909090600000 153 | 00DB:40A000909090600000 154 | 00DC:A00090909090600000 155 | 00DD:402088502020200000 156 | 00DE:000080E090E0800000 157 | 00DF:00007090A090A00000 158 | 00E0:008040709090700000 159 | 00E1:001020709090700000 160 | 00E2:205000709090700000 161 | 00E3:D0B000709090700000 162 | 00E4:005000709090700000 163 | 00E5:305020709090700000 164 | 00E6:000000F070A0F00000 165 | 00E7:0000006080806040C0 166 | 00E8:00804070A0C0700000 167 | 00E9:00102070A0C0700000 168 | 00EA:20500070A0C0700000 169 | 00EB:00500070A0C0700000 170 | 00EC:004020602020700000 171 | 00ED:001020602020700000 172 | 00EE:205000602020700000 173 | 00EF:005000602020700000 174 | 00F0:40F020609090600000 175 | 00F1:D0B000E09090900000 176 | 00F2:008040609090600000 177 | 00F3:001020609090600000 178 | 00F4:40A000609090600000 179 | 00F5:D0B000609090600000 180 | 00F6:009000609090600000 181 | 00F7:000020007000200000 182 | 00F8:000010609090608000 183 | 00F9:008040909090600000 184 | 00FA:001020909090600000 185 | 00FB:40A000909090600000 186 | 00FC:00A000909090600000 187 | 00FD:001020909090701060 188 | 00FE:008080E09090E08080 189 | 00FF:00A000909090701060 190 | E0A0:8090B890903060C0C0 191 | E0A1:808080E00048685848 192 | E0A2:20505050F8E8D8A8F8 193 | E0B0:80C0E0F0F8F0E0C080 194 | E0B1:804020100810204080 195 | E0B2:08183878F878381808 196 | E0B3:081020408040201008 -------------------------------------------------------------------------------- /fonts/tecate/10/cherry-10-b.hex: -------------------------------------------------------------------------------- 1 | 0000:FCFCFCFCFCFCFCFCFCFC 2 | 0020:00000000000000000000 3 | 0021:00303030300030300000 4 | 0022:006C6C6C000000000000 5 | 0023:00287C7C287C7C280000 6 | 0024:00103874301874381000 7 | 0025:00646468102C4C4C0000 8 | 0026:0030686834686C340000 9 | 0027:00303030000000000000 10 | 0028:00183030303030301800 11 | 0029:00301818181818183000 12 | 002A:000010547C387C541000 13 | 002B:00003030FCFC30300000 14 | 002C:00000000000030306000 15 | 002D:00000000787800000000 16 | 002E:00000000000030300000 17 | 002F:000C0C18183030606000 18 | 0030:00386C6C7C6C6C380000 19 | 0031:00183858181818180000 20 | 0032:00386C6C08103C7C0000 21 | 0033:00780C0C380C0C780000 22 | 0034:00183838587C18180000 23 | 0035:007C6060780C0C780000 24 | 0036:00386060786C6C380000 25 | 0037:007C7C08183030300000 26 | 0038:00386C6C386C6C380000 27 | 0039:00386C6C3C0C0C380000 28 | 003A:00000030300030300000 29 | 003B:00000030300030306000 30 | 003C:0000000C3860380C0000 31 | 003D:00000078780078780000 32 | 003E:00000060380C38600000 33 | 003F:00182C2C081000100000 34 | 0040:0078CCBCAC9CC0780000 35 | 0041:0038386C6C7C6C6C0000 36 | 0042:00786C6C786C6C780000 37 | 0043:00386460606064380000 38 | 0044:00786C6C6C6C6C780000 39 | 0045:007C60607860607C0000 40 | 0046:007C6060786060600000 41 | 0047:003864606C6C6C380000 42 | 0048:006C6C6C7C6C6C6C0000 43 | 0049:00783030303030780000 44 | 004A:003C0C0C0C4C4C380000 45 | 004B:006C687870786C6C0000 46 | 004C:006060606060607C0000 47 | 004D:006C7C7C6C6C6C6C0000 48 | 004E:004464747C5C4C440000 49 | 004F:00386C6C6C6C6C380000 50 | 0050:00786C6C786060600000 51 | 0051:00386C6C6C6C6C380C00 52 | 0052:00786C6C786C6C6C0000 53 | 0053:00386C60380C6C380000 54 | 0054:00FC3030303030300000 55 | 0055:006C6C6C6C6C6C380000 56 | 0056:006C6C6C6C6C38380000 57 | 0057:006C6C6C6C7C7C6C0000 58 | 0058:006C6C6C386C6C6C0000 59 | 0059:00C4C468783030300000 60 | 005A:007C7C0810207C7C0000 61 | 005B:00383030303030303800 62 | 005C:006060303018180C0C00 63 | 005D:00381818181818183800 64 | 005E:10386C00000000000000 65 | 005F:00000000000078780000 66 | 0060:00301008000000000000 67 | 0061:0000003C6C6C6C3C0000 68 | 0062:006060786C6C6C780000 69 | 0063:000000386460603C0000 70 | 0064:000C0C3C6C6C6C3C0000 71 | 0065:000000386C7C603C0000 72 | 0066:001C307C303030300000 73 | 0067:0000003C6C6C6C3C0C38 74 | 0068:006060786C6C6C6C0000 75 | 0069:30300070303030780000 76 | 006A:303000703030303030E0 77 | 006B:00606C6870786C6C0000 78 | 006C:00703030303030780000 79 | 006D:0000006C7C7C6C6C0000 80 | 006E:000000786C6C6C6C0000 81 | 006F:000000386C6C6C380000 82 | 0070:000000786C6C6C786060 83 | 0071:0000003C6C6C6C3C0C0C 84 | 0072:0000006C706060600000 85 | 0073:0000003C70381C780000 86 | 0074:0030307C3030301C0000 87 | 0075:0000006C6C6C6C3C0000 88 | 0076:0000006C6C6C38380000 89 | 0077:0000006C6C7C7C6C0000 90 | 0078:0000006C6C386C6C0000 91 | 0079:0000006C6C6C6C3C0C38 92 | 007A:0000007C78103C7C0000 93 | 007B:000C1818707018180C00 94 | 007C:00303030303030303000 95 | 007D:006030301C1C30306000 96 | 007E:00000020745C08000000 97 | 00A0:00000000004878780000 98 | 00A1:00303000303030300000 99 | 00A2:0000083C6868683C0800 100 | 00A3:0018343078247C7C0000 101 | 00A4:0000006C7C287C6C0000 102 | 00A5:00C4C868783078300000 103 | 00A6:00303030000030303000 104 | 00A7:00306860704838185830 105 | 00A8:00282800000000000000 106 | 00A9:007884B4E4B484780000 107 | 00AA:3C6C6C3C007C7C000000 108 | 00AB:00000024486C24000000 109 | 00AC:000000007C7C0C0C0000 110 | 00AD:00000000383800000000 111 | 00AE:007884F4F4EC84780000 112 | 00AF:00787800000000000000 113 | 00B0:00386C6C380000000000 114 | 00B1:0010107C7C107C7C0000 115 | 00B2:00305810387800000000 116 | 00B3:00701830187000000000 117 | 00B4:10200000000000000000 118 | 00B5:0000006C6C6C6C7C6C60 119 | 00B6:007CECEC6C2C2C2C0000 120 | 00B7:00000000303020000000 121 | 00B8:00000000000000003060 122 | 00B9:00183858181800000000 123 | 00BA:386C6C38007C7C000000 124 | 00BB:00000048246C48000000 125 | 00BC:2064A8302054941C0404 126 | 00BD:2064A8302058A408103C 127 | 00BE:C024C830E054941C0404 128 | 00BF:0010001020646C380000 129 | 00C0:201038386C7C6C6C0000 130 | 00C1:081038386C7C6C6C0000 131 | 00C2:102838386C7C6C6C0000 132 | 00C3:142838386C7C6C6C0000 133 | 00C4:280038386C7C6C6C0000 134 | 00C5:382838386C7C6C6C0000 135 | 00C6:001C38385C78989C0000 136 | 00C7:00386460606064383060 137 | 00C8:20107C607860607C0000 138 | 00C9:20107C607860607C0000 139 | 00CA:10287C607860607C0000 140 | 00CB:28007C607860607C0000 141 | 00CC:20107830303030780000 142 | 00CD:10207830303030780000 143 | 00CE:10287830303030780000 144 | 00CF:48007830303030780000 145 | 00D0:00F8CCCCECCCCCF80000 146 | 00D1:14284464745C4C440000 147 | 00D2:2010386C6C6C6C380000 148 | 00D3:0810386C6C6C6C380000 149 | 00D4:1028386C6C6C6C380000 150 | 00D5:1428386C6C6C6C380000 151 | 00D6:2800386C6C6C6C380000 152 | 00D7:0000006C6C106C6C0000 153 | 00D8:04386C6C7C6C6CB80000 154 | 00D9:20106C6C6C6C6C380000 155 | 00DA:08106C6C6C6C6C380000 156 | 00DB:10286C6C6C6C6C380000 157 | 00DC:28006C6C6C6C6C380000 158 | 00DD:0810C468783030300000 159 | 00DE:006060786C6C78606000 160 | 00DF:00386C786C6C6C680000 161 | 00E0:2010003C6C6C6C3C0000 162 | 00E1:0810003C6C6C6C3C0000 163 | 00E2:1834003C6C6C6C3C0000 164 | 00E3:1428003C6C6C6C3C0000 165 | 00E4:2828003C6C6C6C3C0000 166 | 00E5:1028103C6C6C6C3C0000 167 | 00E6:0000006C74385C6C0000 168 | 00E7:000000386460603C1830 169 | 00E8:201000386C7C603C0000 170 | 00E9:081000386C7C603C0000 171 | 00EA:183400386C7C603C0000 172 | 00EB:282800386C7C603C0000 173 | 00EC:20100070303030780000 174 | 00ED:10200070303030780000 175 | 00EE:30680070303030780000 176 | 00EF:28280070303030780000 177 | 00F0:683058386C6C6C380000 178 | 00F1:142800786C6C6C6C0000 179 | 00F2:201000386C6C6C380000 180 | 00F3:081000386C6C6C380000 181 | 00F4:183400386C6C6C380000 182 | 00F5:142800386C6C6C380000 183 | 00F6:282800386C6C6C380000 184 | 00F7:000010007C7C00100000 185 | 00F8:000004386C7C6C384000 186 | 00F9:2010006C6C6C6C3C0000 187 | 00FA:0810006C6C6C6C3C0000 188 | 00FB:1834006C6C6C6C3C0000 189 | 00FC:2828006C6C6C6C3C0000 190 | 00FD:0810006C6C6C6C3C0C38 191 | 00FE:0060786C6C6C6C786000 192 | 00FF:2828006C6C6C6C3C0C38 -------------------------------------------------------------------------------- /fonts/tecate/10/cherry-10-r.hex: -------------------------------------------------------------------------------- 1 | 0000:FCFCFCFCFCFCFCFCFCFC 2 | 0020:00000000000000000000 3 | 0021:00101010100010100000 4 | 0022:00282828000000000000 5 | 0023:0028287C287C28280000 6 | 0024:00103854301854381000 7 | 0025:00245428102854480000 8 | 0026:00205050205448340000 9 | 0027:00101010000000000000 10 | 0028:00182020202020201800 11 | 0029:00300808080808083000 12 | 002A:00000028107C10280000 13 | 002B:00000010107C10100000 14 | 002C:00000000000010102000 15 | 002D:00000000007800000000 16 | 002E:00000000000010100000 17 | 002F:00080810102020404000 18 | 0030:00304858684848300000 19 | 0031:00103050101010100000 20 | 0032:00304848102040780000 21 | 0033:00700808300808700000 22 | 0034:00103030507810100000 23 | 0035:00784040700808700000 24 | 0036:00304040704848300000 25 | 0037:00780810102020200000 26 | 0038:00304848304848300000 27 | 0039:00304848380808300000 28 | 003A:00000010100010100000 29 | 003B:00000010100010102000 30 | 003C:00000008304030080000 31 | 003D:00000000780078000000 32 | 003E:00000040300830400000 33 | 003F:00304848102000200000 34 | 0040:0038445C544C403C0000 35 | 0041:00303048487848480000 36 | 0042:00704848704848700000 37 | 0043:00304840404048300000 38 | 0044:00704848484848700000 39 | 0045:00784040704040780000 40 | 0046:00784040704040400000 41 | 0047:00304840584848300000 42 | 0048:00484848784848480000 43 | 0049:00381010101010380000 44 | 004A:00380808080848300000 45 | 004B:00484850705048480000 46 | 004C:00404040404040780000 47 | 004D:00485878484848480000 48 | 004E:00484868585848480000 49 | 004F:00304848484848300000 50 | 0050:00704848704040400000 51 | 0051:00304848484848301800 52 | 0052:00704848704848480000 53 | 0053:00304840300848300000 54 | 0054:007C1010101010100000 55 | 0055:00484848484848300000 56 | 0056:00484848484830300000 57 | 0057:00484848485878480000 58 | 0058:00484848304848480000 59 | 0059:00444428281010100000 60 | 005A:00780810204040780000 61 | 005B:00382020202020203800 62 | 005C:00404020201010080800 63 | 005D:00380808080808083800 64 | 005E:10284400000000000000 65 | 005F:00000000000000780000 66 | 0060:00301008000000000000 67 | 0061:00000038484848380000 68 | 0062:00404070484848700000 69 | 0063:00000030484040380000 70 | 0064:00080838484848380000 71 | 0065:00000030487840380000 72 | 0066:00182078202020200000 73 | 0067:00000038484848380830 74 | 0068:00404070484848480000 75 | 0069:10100030101010380000 76 | 006A:10100030101010101060 77 | 006B:00404048507048480000 78 | 006C:00301010101010380000 79 | 006D:00000048587848480000 80 | 006E:00000070484848480000 81 | 006F:00000030484848300000 82 | 0070:00000070484848704040 83 | 0071:00000038484848380808 84 | 0072:00000058604040400000 85 | 0073:00000038403008700000 86 | 0074:00202078202020180000 87 | 0075:00000048484848380000 88 | 0076:00000048484830300000 89 | 0077:00000048485878480000 90 | 0078:00000048483048480000 91 | 0079:00000048484848380830 92 | 007A:00000078102040780000 93 | 007B:000C1010606010100C00 94 | 007C:00101010101010101000 95 | 007D:006010100C0C10106000 96 | 007E:00000020545408000000 97 | 00A0:00000000000048780000 98 | 00A1:00101000101010100000 99 | 00A2:00001038505050381000 100 | 00A3:001824207020247C0000 101 | 00A4:00000044382838440000 102 | 00A5:004444287C107C100000 103 | 00A6:00101010000010101000 104 | 00A7:00304860504828184830 105 | 00A8:00280000000000000000 106 | 00A9:007884B4A4B484780000 107 | 00AA:38484838007800000000 108 | 00AB:00000024484824000000 109 | 00AC:00000000007808080000 110 | 00AD:00000000003800000000 111 | 00AE:007884B4B4AC84780000 112 | 00AF:00780000000000000000 113 | 00B0:00304848300000000000 114 | 00B1:000010107C10107C0000 115 | 00B2:00304810207800000000 116 | 00B3:00700830087000000000 117 | 00B4:10200000000000000000 118 | 00B5:00000048484848784840 119 | 00B6:003C7474341414140000 120 | 00B7:00000000101000000000 121 | 00B8:00000000000000001020 122 | 00B9:00103050101000000000 123 | 00BA:30484830007800000000 124 | 00BB:00000048242448000000 125 | 00BC:2064A8302054941C0404 126 | 00BD:2064A8302058A408103C 127 | 00BE:C024C830E054941C0404 128 | 00BF:00100010204444380000 129 | 00C0:20103030487848480000 130 | 00C1:10203030487848480000 131 | 00C2:10283030487848480000 132 | 00C3:28503030487848480000 133 | 00C4:48003030487848480000 134 | 00C5:30483030487848480000 135 | 00C6:001C30305C70909C0000 136 | 00C7:00304840404048301020 137 | 00C8:20107840704040780000 138 | 00C9:10207840704040780000 139 | 00CA:10287840704040780000 140 | 00CB:48007840704040780000 141 | 00CC:20103810101010380000 142 | 00CD:08103810101010380000 143 | 00CE:10283810101010380000 144 | 00CF:28003810101010380000 145 | 00D0:00382424742424380000 146 | 00D1:28504868685858480000 147 | 00D2:20103048484848300000 148 | 00D3:10203048484848300000 149 | 00D4:10283048484848300000 150 | 00D5:28503048484848300000 151 | 00D6:48003048484848300000 152 | 00D7:00000000281028000000 153 | 00D8:00344848586848B00000 154 | 00D9:20104848484848300000 155 | 00DA:10204848484848300000 156 | 00DB:10284848484848300000 157 | 00DC:48004848484848300000 158 | 00DD:08104428281010100000 159 | 00DE:00404070484870404000 160 | 00DF:00304850484848500000 161 | 00E0:20100038484848380000 162 | 00E1:10200038484848380000 163 | 00E2:10280038484848380000 164 | 00E3:28500038484848380000 165 | 00E4:00480038484848380000 166 | 00E5:10281038484848380000 167 | 00E6:0000006C1438506C0000 168 | 00E7:00000030484040381020 169 | 00E8:20100030487840380000 170 | 00E9:10200030487840380000 171 | 00EA:10280030487840380000 172 | 00EB:00480030487840380000 173 | 00EC:20100030101010380000 174 | 00ED:08100030101010380000 175 | 00EE:10280030101010380000 176 | 00EF:00280030101010380000 177 | 00F0:A040A030484848300000 178 | 00F1:28500070484848480000 179 | 00F2:20100030484848300000 180 | 00F3:10200030484848300000 181 | 00F4:10280030484848300000 182 | 00F5:28500030484848300000 183 | 00F6:00480030484848300000 184 | 00F7:00000010007C00100000 185 | 00F8:00000034487848B00000 186 | 00F9:20100048484848380000 187 | 00FA:10200048484848380000 188 | 00FB:10280048484848380000 189 | 00FC:00480048484848380000 190 | 00FD:10200048484848380830 191 | 00FE:00405068484868504000 192 | 00FF:00480048484848380830 -------------------------------------------------------------------------------- /tools/make_swig_interface.py: -------------------------------------------------------------------------------- 1 | import re 2 | import os 3 | 4 | os.system("python3 cat_c.py") 5 | 6 | 7 | txt = open('../r1b.h','r').read() 8 | 9 | structs = re.findall(r'typedef.*?\{.*?\} *r1b_.*?_t;',txt.replace("\n","")) 10 | 11 | macros = [x for x in txt.replace("\\\n","").split("\n") if x.startswith("#define R1B_") and len(x.strip().split(" "))>2] 12 | 13 | macros = [x for x in macros if (not ("(" in x)) and (not ("{" in x))] 14 | 15 | lines = txt.split("\n") 16 | funcs = [] 17 | 18 | for l in lines: 19 | l = l.strip(); 20 | if len(l.split(" "))<2: 21 | continue 22 | 23 | ll = l.split(" "); 24 | if ll[1].startswith("r1b_") and ll[0] != "}" and l.strip().endswith("{") and "=" not in l: 25 | funcs.append(l.replace("{",";")) 26 | 27 | iface = "\n".join(macros+structs+funcs) 28 | 29 | impl0 = """ 30 | make_tmp0 31 | make_tmp1 32 | dither_fs 33 | dither_ord 34 | resample_nearest 35 | resample_bilinear 36 | glyph_index_lin_search 37 | glyph_index_bin_search 38 | area 39 | triangulate_snip 40 | polygon_convex 41 | polygon_concave 42 | mesh_bbox 43 | get_font_fg8x12 44 | text 45 | """ 46 | 47 | impl1 = """ 48 | lines 49 | polygon 50 | transform_mesh 51 | render_mesh 52 | """ 53 | 54 | impl = [x for x in (impl0+impl1).split("\n") if len(x)] 55 | 56 | pubs = [x.strip().split("(")[0].split(" ")[1][4:] for x in funcs] 57 | pubs = [x for x in pubs if x not in impl] 58 | 59 | pubmacros = [x.split(" ")[1][4:] for x in macros] 60 | 61 | newline = "\n" 62 | 63 | code = f""" 64 | 65 | %include "carrays.i" 66 | %array_class(float, FloatArray); 67 | 68 | 69 | %module r1b 70 | 71 | %{{ 72 | 73 | {iface} 74 | 75 | void* nullptr(){{ 76 | return NULL; 77 | }} 78 | 79 | 80 | %}} 81 | 82 | {iface} 83 | 84 | void* nullptr(){{ 85 | return NULL; 86 | }} 87 | 88 | %pythoncode %{{ 89 | 90 | {newline.join([x+"=r1b_"+x for x in pubs])} 91 | 92 | {newline.join([x+"=R1B_"+x for x in pubmacros])} 93 | 94 | def from_list(lst): 95 | h = len(lst) 96 | w = len(lst[0]) 97 | arr = FloatArray(w*h) 98 | for i in range(h): 99 | for j in range(w): 100 | arr[i*w+j] = lst[i][j] 101 | return r1b_from_array(w,h,arr) 102 | 103 | def to_list(im): 104 | lst = [] 105 | for i in range(im.h): 106 | lst.append([]) 107 | for j in range(im.w): 108 | lst[-1].append(get(im,j,i,BRDR_NONE)) 109 | return lst 110 | 111 | def float_array(lst): 112 | arr = FloatArray(len(lst)) 113 | for i in range(len(lst)): 114 | arr[i] = lst[i] 115 | return arr 116 | 117 | def lines(im,pts,close,val,mode): 118 | X,Y = zip(*pts) 119 | return r1b_lines(im,float_array(X),float_array(Y),len(X),close,val,mode) 120 | 121 | def polygon(im,pts,pttn,mode): 122 | X,Y = zip(*pts) 123 | return r1b_polygon(im,float_array(X),float_array(Y),len(X),pttn,mode) 124 | 125 | def transform_mesh(mesh,mat): 126 | return r1b_transform_mesh(mesh,float_array(mat)) 127 | 128 | def render_mesh(im, depth, mesh, f, pttn, light, wire_val, shdr, wire): 129 | if pttn == None: 130 | pttn = nullptr() 131 | 132 | if light != None: 133 | return r1b_render_mesh(im, depth, mesh, f, nullptr(), float_array(light), wire_val, shdr, wire) 134 | else: 135 | return r1b_render_mesh(im, depth, mesh, f, pttn, nullptr(), wire_val, shdr, wire) 136 | 137 | PTTN_SOLID = r1b_from_array( 1, 1, float_array([1])) 138 | PTTN_GRAY5 = r1b_from_array( 4, 4, float_array([1,1,0,1, 1,1,1,1, 0,1,1,1, 1,1,1,1, ])) 139 | PTTN_GRAY4 = r1b_from_array( 4, 4, float_array([1,1,0,1, 0,1,1,1, 1,1,0,1, 0,1,1,1, ])) 140 | PTTN_GRAY3 = r1b_from_array( 2, 2, float_array([1,0, 0,1, ])) 141 | PTTN_GRAY2 = r1b_from_array( 4, 4, float_array([0,0,1,0, 1,0,0,0, 0,0,1,0, 1,0,0,0, ])) 142 | PTTN_GRAY1 = r1b_from_array( 4, 4, float_array([0,0,1,0, 0,0,0,0, 1,0,0,0, 0,0,0,0, ])) 143 | PTTN_EMPTY = r1b_from_array( 1, 1, float_array([0])) 144 | PTTN_GRID1 = r1b_from_array( 2, 2, float_array([0,1, 1,1, ])) 145 | PTTN_GRID2 = r1b_from_array( 4, 4, float_array([0,0,0,1, 0,0,0,1, 0,0,0,1, 1,1,1,1, ])) 146 | PTTN_DOTS1 = r1b_from_array( 2, 2, float_array([1,0, 0,0, ])) 147 | PTTN_DOTS2 = r1b_from_array( 4, 4, float_array([1,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, ])) 148 | PTTN_DOTSR = r1b_from_array(12,12, float_array([0,0,0,0,0,1,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0, 0,1,0,0,0,0,0,0,0,0,0,1, 0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,1,0,0,0,0, 0,0,0,0,0,0,0,0,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,0,0,1,0,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,0,0,0,1,0,0, ])) 149 | PTTN_HRZL1 = r1b_from_array( 1, 2, float_array([1, 0, ])) 150 | PTTN_VRTL1 = r1b_from_array( 2, 1, float_array([1,0, ])) 151 | PTTN_HRZL2 = r1b_from_array( 1, 4, float_array([1, 0, 0, 0, ])) 152 | PTTN_VRTL2 = r1b_from_array( 4, 1, float_array([1,0,0,0, ])) 153 | PTTN_DGNLL = r1b_from_array( 4, 4, float_array([0,0,0,1, 0,0,1,0, 0,1,0,0, 1,0,0,0, ])) 154 | PTTN_DGNLR = r1b_from_array( 4, 4, float_array([1,0,0,0, 0,1,0,0, 0,0,1,0, 0,0,0,1, ])) 155 | PTTN_CROSS = r1b_from_array( 4, 4, float_array([1,0,0,0, 0,1,0,1, 0,0,1,0, 0,1,0,1, ])) 156 | PTTN_BRICK = r1b_from_array( 8, 8, float_array([1,1,1,1,1,1,1,1, 0,0,0,0,1,0,0,0, 0,0,0,0,1,0,0,0, 0,0,0,0,1,0,0,0, 1,1,1,1,1,1,1,1, 1,0,0,0,0,0,0,0, 1,0,0,0,0,0,0,0, 1,0,0,0,0,0,0,0, ])) 157 | PTTN_SCALE = r1b_from_array( 8, 8, float_array([0,0,0,0,1,0,0,0, 0,0,0,1,0,1,0,0, 1,1,1,0,0,0,1,1, 1,0,0,0,0,0,0,0, 1,0,0,0,0,0,0,0, 0,1,0,0,0,0,0,1, 0,0,1,1,1,1,1,0, 0,0,0,0,1,0,0,0, ])) 158 | PTTN_WAVES = r1b_from_array( 8, 8, float_array([0,0,0,0,0,0,1,0, 0,0,0,0,0,1,0,1, 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,0,0,1,0,0,0, 0,1,0,1,0,0,0,0, 0,0,1,0,0,0,0,0, ])) 159 | PTTN_CHESS = r1b_from_array( 4, 4, float_array([1,1,0,0, 1,1,0,0, 0,0,1,1, 0,0,1,1, ])) 160 | PTTN_DMOND = r1b_from_array( 8, 8, float_array([0,0,0,0,1,0,0,0, 0,0,0,1,0,1,0,0, 0,0,1,0,1,0,1,0, 0,1,0,1,0,1,0,1, 0,0,1,0,1,0,1,0, 0,0,0,1,0,1,0,0, 0,0,0,0,1,0,0,0, 0,0,0,0,0,0,0,0, ])) 161 | 162 | FONT_FG8X12 = r1b_get_font_fg8x12() 163 | 164 | NULL = nullptr() 165 | 166 | %}} 167 | 168 | 169 | """ 170 | # print(code) 171 | 172 | open("../swig/r1b.i",'w').write(code) 173 | 174 | 175 | os.system("cd ../swig; sh compile.sh") 176 | 177 | -------------------------------------------------------------------------------- /fonts/tecate/11/HaxorMedium-10.hex: -------------------------------------------------------------------------------- 1 | 0000:FCFCFCFCFCFCFCFCFC0000 2 | 0001:00003078FC783000000000 3 | 0002:A854A854A854A854A80000 4 | 000B:10101010E0000000000000 5 | 000C:00000000E0101010101010 6 | 000D:000000000C101010101010 7 | 000E:101010100C000000000000 8 | 000F:10101010EC101010101010 9 | 0010:FC00000000000000000000 10 | 0011:0000FC0000000000000000 11 | 0012:00000000FC000000000000 12 | 0013:000000000000FC00000000 13 | 0014:0000000000000000FC0000 14 | 0015:101010100C101010101010 15 | 0016:10101010E0101010101010 16 | 0017:10101010EC000000000000 17 | 0018:00000000EC101010101010 18 | 0019:1010101010101010101010 19 | 0020:0000000000000000000000 20 | 0021:0000202020202000200000 21 | 0022:0000D84890000000000000 22 | 0023:00000028F850F8A0000000 23 | 0024:00002070A0702870200000 24 | 0025:000040A8502050A8100000 25 | 0026:0000205020508C88740000 26 | 0027:0000301020000000000000 27 | 0028:0000102020202020100000 28 | 0029:0000201010101010200000 29 | 002A:00000020A870A820000000 30 | 002B:0000002020F82020000000 31 | 002C:0000000000000000301020 32 | 002D:0000000000780000000000 33 | 002E:0000000000000000200000 34 | 002F:0000102020404080800000 35 | 0030:0000304858684848300000 36 | 0031:0000206020202020700000 37 | 0032:0000304808102040780000 38 | 0033:0000304808100848300000 39 | 0034:0000103030507810100000 40 | 0035:0000784070080848300000 41 | 0036:0000304840704848300000 42 | 0037:0000780810102020200000 43 | 0038:0000304848304848300000 44 | 0039:0000304848380848300000 45 | 003A:0000000020000020000000 46 | 003B:0000000020000000202000 47 | 003C:0000001020402010000000 48 | 003D:0000000078000078000000 49 | 003E:0000004020102040000000 50 | 003F:0000708808102000200000 51 | 0040:000078849CA49880780000 52 | 0041:000020505088F888880000 53 | 0042:0000F08888F08888F00000 54 | 0043:0000708880808088700000 55 | 0044:0000F08888888888F00000 56 | 0045:0000F88080E08080F80000 57 | 0046:0000F88080E08080800000 58 | 0047:0000708880809888700000 59 | 0048:0000888888F88888880000 60 | 0049:0000702020202020700000 61 | 004A:0000F80808088888700000 62 | 004B:00008890A0C0A090880000 63 | 004C:0000808080808080F80000 64 | 004D:000088D8A8888888880000 65 | 004E:000088C8C8A89898880000 66 | 004F:0000708888888888700000 67 | 0050:0000F08888F08080800000 68 | 0051:000070888888A890680000 69 | 0052:0000F08888F0A090880000 70 | 0053:0000708880700888700000 71 | 0054:0000F82020202020200000 72 | 0055:0000888888888888700000 73 | 0056:0000888888505050200000 74 | 0057:0000888888A8A8A8500000 75 | 0058:0000888850205088880000 76 | 0059:0000888850502020200000 77 | 005A:0000F80810204080F80000 78 | 005B:0000302020202020300000 79 | 005C:0000804040202010100000 80 | 005D:0000301010101010300000 81 | 005E:0000205088000000000000 82 | 005F:0000000000000000FC0000 83 | 0060:0000202010000000000000 84 | 0061:0000000060107090680000 85 | 0062:00008080A0D090D0A00000 86 | 0063:0000000060908090600000 87 | 0064:0000101050B090B0500000 88 | 0065:000000006090E080600000 89 | 0066:0000304040E04040400000 90 | 0067:0000000068909060708870 91 | 0068:00008080A0D09090900000 92 | 0069:0000002000602020700000 93 | 006A:0000001000301010109060 94 | 006B:0000808090A0C0A0900000 95 | 006C:0000602020202020700000 96 | 006D:00000000D0A8A8A8A80000 97 | 006E:00000000E0909090900000 98 | 006F:0000000060909090600000 99 | 0070:00000000A0D090D0A08080 100 | 0071:0000000050B090B0501010 101 | 0072:00000000A0D08080800000 102 | 0073:0000000070807008700000 103 | 0074:00004040E0404040300000 104 | 0075:00000000909090B0500000 105 | 0076:0000000088885050200000 106 | 0077:0000000088A8A8A8500000 107 | 0078:0000000090906090900000 108 | 0079:0000000090909070101060 109 | 007A:00000000F0106080F00000 110 | 007B:0000304020402040300000 111 | 007C:0000202020202020200000 112 | 007D:0000601020102010600000 113 | 007E:0000000040A81000000000 114 | 00A1:00003048488484FC848484 115 | 00A3:00004040506040C040407E 116 | 00A4:00002D122121122D000000 117 | 00A5:3010A080808080808080FC 118 | 00A6:1020007884807804048478 119 | 00A7:00000E1108141209050211 120 | 00A9:4830007884807804048478 121 | 00AA:0000788480807804048478 122 | 00AB:2810007C10101010101010 123 | 00AC:0810007C0408102040407C 124 | 00AE:2810007C0408102040407C 125 | 00AF:0010007C0408102040407C 126 | 00B0:3048483000000000000000 127 | 00B1:000000007884047C84847A 128 | 00B3:000030141810305010107C 129 | 00B4:0810000000000000000000 130 | 00B5:0C0438101010101010107C 131 | 00B6:0010200078848078048478 132 | 00B7:2418000000000000000000 133 | 00B9:0048300078848078048478 134 | 00BA:0000000078848078048478 135 | 00BB:000C4448F0404040404438 136 | 00BC:00102000FC0408304080FC 137 | 00BE:00483000FC0408304080FC 138 | 00BF:00003000FC0408304080FC 139 | 00C0:102000F8848484F8908884 140 | 00C1:10200030484884FC848484 141 | 00C2:30480030484884FC848484 142 | 00C3:48300030484884FC848484 143 | 00C4:48003048488484FC848484 144 | 00C5:20400080808080808080FC 145 | 00C6:1020007884808080808478 146 | 00C7:0000788480808080808478 147 | 00C8:4830007884808080808478 148 | 00C9:102000FC8080F0808080FC 149 | 00CA:0000FC808080F0808080FC 150 | 00CB:004800FC8080F0808080FC 151 | 00CC:483000FC8080F0808080FC 152 | 00CD:0810003810101010101038 153 | 00CE:1028003810101010101038 154 | 00CF:483000F8848484848484F8 155 | 00D0:0000F8848484E4848484F8 156 | 00D1:08100084C4C4A4948C8C84 157 | 00D2:48300084C4C4A4948C8C84 158 | 00D3:1020007884848484848478 159 | 00D4:3048007884848484848478 160 | 00D5:2448007884848484848478 161 | 00D6:0048007884848484848478 162 | 00D8:483000F8848484F8908884 163 | 00D9:3048308484848484848478 164 | 00DA:1020008484848484848478 165 | 00DB:2448008484848484848478 166 | 00DC:0048008484848484848478 167 | 00DD:0810004444282810101010 168 | 00DE:0000F82020202020202020 169 | 00DF:00000E1111161111161010 170 | 00E0:00081000B8C48080808080 171 | 00E1:001020007884047C84847A 172 | 00E2:003048007884047C84847A 173 | 00E3:004830007884047C84847A 174 | 00E4:000048007884047C84847A 175 | 00E5:281000301010101010107C 176 | 00E6:0010200078848080808478 177 | 00E7:0000000078848080808478 178 | 00E8:0048300078848080808478 179 | 00E9:00102000788484F8808478 180 | 00EA:00000000788484F8808478 181 | 00EB:00004800788484F8808478 182 | 00EC:00483000788484F8808478 183 | 00ED:000810003010101010107C 184 | 00EE:001028003010101010107C 185 | 00EF:06020604748C8484848C74 186 | 00F0:00040E04748C8484848C74 187 | 00F1:00102000F8848484848484 188 | 00F2:00483000F8848484848484 189 | 00F3:0010200078848484848478 190 | 00F4:0030480078848484848478 191 | 00F5:0024480078848484848478 192 | 00F6:0000480078848484848478 193 | 00F8:00483000B8C48080808080 194 | 00F9:0030483084848484848C74 195 | 00FA:0010200084848484848C74 196 | 00FB:0024480084848484848C74 197 | 00FC:0000480084848484848C74 198 | 00FD:00102000848484848C7404 199 | 00FE:00004040F0404040404438 -------------------------------------------------------------------------------- /fonts/tecate/12/Tamzen6x12b.hex: -------------------------------------------------------------------------------- 1 | 0000:0000007C6C6C6C6C7C000000 2 | 0002:A854A854A854A854A854A854 3 | 0007:000070C8C870000000000000 4 | 000B:3030303030F0000000000000 5 | 000C:0000000000F0303030303030 6 | 000D:00000000003C303030303030 7 | 000E:30303030303C000000000000 8 | 000F:3030303030FC303030303030 9 | 0012:0000000000FC000000000000 10 | 0015:30303030303C303030303030 11 | 0016:3030303030F0303030303030 12 | 0017:3030303030FC000000000000 13 | 0018:0000000000FC303030303030 14 | 0019:303030303030303030303030 15 | 001E:0000386060F86060F8000000 16 | 0020:000000000000000000000000 17 | 0021:0060F0F06060000060000000 18 | 0022:00D8D8D80000000000000000 19 | 0023:0050F85050F8F85050000000 20 | 0024:303078C0603018F060600000 21 | 0025:0060A0A8D02058A828300000 22 | 0026:0060D0D060FCD8D87C000000 23 | 0027:006060600000000000000000 24 | 0028:001830306060606030301800 25 | 0029:00C06060303030306060C000 26 | 002A:00000020F870F82000000000 27 | 002B:0000003030FC303000000000 28 | 002C:000000000000007070306000 29 | 002D:0000000000F8000000000000 30 | 002E:000000000000007070000000 31 | 002F:0000181830306060C0C00000 32 | 0030:000070C8D8E8C8F870000000 33 | 0031:00003070F0303030FC000000 34 | 0032:00007098183060C0F8000000 35 | 0033:0000F81830701818F0000000 36 | 0034:000018385898FC1818000000 37 | 0035:0000F8C0F018189870000000 38 | 0036:000070C0F0C8C8C870000000 39 | 0037:0000F8183030606060000000 40 | 0038:000070C8C870C8C870000000 41 | 0039:000070C8C8C8781870000000 42 | 003A:000000707000007070000000 43 | 003B:000000707000007070306000 44 | 003C:0000183060C0603018000000 45 | 003D:00000000F800F80000000000 46 | 003E:0000C06030183060C0000000 47 | 003F:007098183060000060000000 48 | 0040:0070C8C8D8D8D8C0C0780000 49 | 0041:00002070C8C8F8C8C8000000 50 | 0042:0000F0C8C8F0C8C8F0000000 51 | 0043:000078C0C0C0C0C078000000 52 | 0044:0000F0C8C8C8C8F0E0000000 53 | 0045:0000F8C0C0F0C0C0F8000000 54 | 0046:0000F8C0C0F0C0C0C0000000 55 | 0047:000078C0C0D8C8C878000000 56 | 0048:0000C8C8C8F8C8C8C8000000 57 | 0049:000078303030303078000000 58 | 004A:000018181818989870000000 59 | 004B:0000C8D8F0E0F0D8C8000000 60 | 004C:0000C0C0C0C0C0C0F8000000 61 | 004D:000088D8F8F8A88888000000 62 | 004E:0000C8C8E8F8D8C8C8000000 63 | 004F:000070C8C8C8C8C870000000 64 | 0050:0000F0C8C8F0C0C0C0000000 65 | 0051:000070C8C8C8C8C870100800 66 | 0052:0000F0C8C8F0F0D8C8000000 67 | 0053:000078C0C0701818F0000000 68 | 0054:0000FC303030303030000000 69 | 0055:0000C8C8C8C8C8C870000000 70 | 0056:0000C8C8C8C8707020000000 71 | 0057:000088A8A8F8F8D8D8000000 72 | 0058:0000C8C8707070C8C8000000 73 | 0059:0000C8C8C870303030000000 74 | 005A:0000F830306060C0F8000000 75 | 005B:007860606060606060607800 76 | 005C:0000C0C06060303018180000 77 | 005D:00F03030303030303030F000 78 | 005E:00002070D888000000000000 79 | 005F:00000000000000000000FC00 80 | 0060:006030180000000000000000 81 | 0061:000000007018789878000000 82 | 0062:0000C0C0F0C8C8C8F0000000 83 | 0063:0000000078C0C0C078000000 84 | 0064:000018187898989878000000 85 | 0065:0000000070C8F8C078000000 86 | 0066:00003860F860606060000000 87 | 0067:000000007898989878187000 88 | 0068:0000C0C0F0C8C8C8C8000000 89 | 0069:000030007030303078000000 90 | 006A:00003000703030303030E000 91 | 006B:0000C0C0D8F0F0D8C8000000 92 | 006C:000070303030303078000000 93 | 006D:00000000D8F8F8C8C8000000 94 | 006E:00000000F0C8C8C8C8000000 95 | 006F:0000000070C8C8C870000000 96 | 0070:00000000F0C8C8C8F0C0C000 97 | 0071:000000007898989878181800 98 | 0072:00000000D8E0C0C0C0000000 99 | 0073:0000000078C07018F0000000 100 | 0074:00000060F860606038000000 101 | 0075:00000000C8C8C8C870000000 102 | 0076:00000000C8C8707020000000 103 | 0077:0000000088A8A8F8F8000000 104 | 0078:00000000C8707070C8000000 105 | 0079:00000000C8C8C8703030E000 106 | 007A:00000000F83060C0F8000000 107 | 007B:1C30303030E0303030301C00 108 | 007C:003030303030303030300000 109 | 007D:E0303030301C30303030E000 110 | 007E:000068F8B000000000000000 111 | 00A0:000000000000000000000000 112 | 00A1:0000006000006060F0F06000 113 | 00A2:00303078C0C0C07830300000 114 | 00A3:0000386060F86060F8000000 115 | 00A4:0000C870C8C870C800000000 116 | 00A5:0000C8C870F830F830000000 117 | 00A6:003030303000303030300000 118 | 00A8:00D8D8000000000000000000 119 | 00A9:000070D8A8B8A8D870000000 120 | 00AB:00000000246CD86C24000000 121 | 00AD:0000000000F8000000000000 122 | 00B0:000070C8C870000000000000 123 | 00B4:001830000000000000000000 124 | 00B8:00000000000000000030E000 125 | 00BB:0000000090D86CD890000000 126 | 00BF:0000003000003060C0C87000 127 | 00C0:C060002070C8F8C8C8000000 128 | 00C1:1830002070C8F8C8C8000000 129 | 00C2:70D8002070C8F8C8C8000000 130 | 00C3:68B0002070C8F8C8C8000000 131 | 00C4:D8D8002070C8F8C8C8000000 132 | 00C5:70D8702070C8F8C8C8000000 133 | 00C6:00003870D0D8F0D0D8000000 134 | 00C7:000078C0C0C0C0C07830E000 135 | 00C8:C06000F8C0F0C0C0F8000000 136 | 00C9:183000F8C0F0C0C0F8000000 137 | 00CA:70D800F8C0F0C0C0F8000000 138 | 00CB:D8D800F8C0F0C0C0F8000000 139 | 00CC:603000783030303078000000 140 | 00CD:183000783030303078000000 141 | 00CE:70D800783030303078000000 142 | 00CF:D8D800783030303078000000 143 | 00D0:0000F06868E86870E0000000 144 | 00D1:68B000C8E8F8D8C8C8000000 145 | 00D2:C0600070C8C8C8C870000000 146 | 00D3:18300070C8C8C8C870000000 147 | 00D4:70D80070C8C8C8C870000000 148 | 00D5:68B00070C8C8C8C870000000 149 | 00D6:D8D80070C8C8C8C870000000 150 | 00D7:00000000C87070C800000000 151 | 00D8:001070C8D8E8C8C870400000 152 | 00D9:C06000C8C8C8C8C870000000 153 | 00DA:183000C8C8C8C8C870000000 154 | 00DB:70D800C8C8C8C8C870000000 155 | 00DC:D8D800C8C8C8C8C870000000 156 | 00DD:183000C8C870303030000000 157 | 00DE:0000C0F0C8C8C8F0C0000000 158 | 00DF:0070C8C8D0C8C8C8D0C00000 159 | 00E0:00C060007018789878000000 160 | 00E1:001830007018789878000000 161 | 00E2:0070D8007018789878000000 162 | 00E3:0068B0007018789878000000 163 | 00E4:00D8D8007018789878000000 164 | 00E5:70D870007018789878000000 165 | 00E6:00000000D86878B0F8000000 166 | 00E7:0000000070C0C0C07060C000 167 | 00E8:00C0600070C8F8C078000000 168 | 00E9:0018300070C8F8C078000000 169 | 00EA:0070D80070C8F8C078000000 170 | 00EB:00D8D80070C8F8C078000000 171 | 00EC:006030007030303078000000 172 | 00ED:001830007030303078000000 173 | 00EE:0070D8007030303078000000 174 | 00EF:00D8D8007030303078000000 175 | 00F0:203870307898989870000000 176 | 00F1:0068B000F0C8C8C8C8000000 177 | 00F2:00C0600070C8C8C870000000 178 | 00F3:0018300070C8C8C870000000 179 | 00F4:0070D80070C8C8C870000000 180 | 00F5:0068B00070C8C8C870000000 181 | 00F6:00D8D80070C8C8C870000000 182 | 00F7:0000303000FC003030000000 183 | 00F8:0000001070D8E8C870400000 184 | 00F9:00C06000C8C8C8C870000000 185 | 00FA:00183000C8C8C8C870000000 186 | 00FB:0070D800C8C8C8C870000000 187 | 00FC:00D8D800C8C8C8C870000000 188 | 00FD:00183000C8C8C8C878187000 189 | 00FE:0000C0C0F0C8C8C8F0C0C000 190 | 00FF:00D8D800C8C8C8C878187000 -------------------------------------------------------------------------------- /fonts/tecate/12/Tamzen6x12r.hex: -------------------------------------------------------------------------------- 1 | 0000:000000784848484878000000 2 | 0002:A854A854A854A854A854A854 3 | 0007:000060909060000000000000 4 | 000B:2020202020E0000000000000 5 | 000C:0000000000E0202020202020 6 | 000D:00000000003C202020202020 7 | 000E:20202020203C000000000000 8 | 000F:2020202020FC202020202020 9 | 0012:0000000000FC000000000000 10 | 0015:20202020203C202020202020 11 | 0016:2020202020E0202020202020 12 | 0017:2020202020FC000000000000 13 | 0018:0000000000FC202020202020 14 | 0019:202020202020202020202020 15 | 001E:0000304040F04040F8000000 16 | 0020:000000000000000000000000 17 | 0021:002020202020000020000000 18 | 0022:005050500000000000000000 19 | 0023:005050F85050F85050000000 20 | 0024:101038402010087020200000 21 | 0025:0040A0A8502050A828100000 22 | 0026:0040A0A040A8909068000000 23 | 0027:002020200000000000000000 24 | 0028:001020204040404020201000 25 | 0029:004020201010101020204000 26 | 002A:00000020A870A82000000000 27 | 002B:0000002020F8202000000000 28 | 002C:000000000000006060204000 29 | 002D:0000000000F8000000000000 30 | 002E:000000000000006060000000 31 | 002F:000010102020404080800000 32 | 0030:0000708898A8C88870000000 33 | 0031:00002060A0202020F8000000 34 | 0032:0000708808102040F8000000 35 | 0033:0000F8081030088870000000 36 | 0034:000010305090F81010000000 37 | 0035:0000F880F008088870000000 38 | 0036:0000304080F0888870000000 39 | 0037:0000F8081010202020000000 40 | 0038:000070888870888870000000 41 | 0039:000070888878081060000000 42 | 003A:000000606000006060000000 43 | 003B:000000606000006060204000 44 | 003C:000008102040201008000000 45 | 003D:00000000F800F80000000000 46 | 003E:000080402010204080000000 47 | 003F:007088081020000020000000 48 | 0040:0070888898A8B88080780000 49 | 0041:000020508888F88888000000 50 | 0042:0000F08888F08888F0000000 51 | 0043:000038408080804038000000 52 | 0044:0000F08888888890E0000000 53 | 0045:0000F88080F08080F8000000 54 | 0046:0000F88080F0808080000000 55 | 0047:000038408098884838000000 56 | 0048:0000888888F8888888000000 57 | 0049:000070202020202070000000 58 | 004A:000008080808888870000000 59 | 004B:00008890A0C0A09088000000 60 | 004C:0000808080808080F8000000 61 | 004D:000088D8A8A8888888000000 62 | 004E:000088C8A898888888000000 63 | 004F:000070888888888870000000 64 | 0050:0000F08888F0808080000000 65 | 0051:000070888888888870100800 66 | 0052:0000F08888F0A09088000000 67 | 0053:0000788080700808F0000000 68 | 0054:0000F8202020202020000000 69 | 0055:000088888888888870000000 70 | 0056:000088888850502020000000 71 | 0057:0000888888A8A8A8D8000000 72 | 0058:000088885020508888000000 73 | 0059:000088885020202020000000 74 | 005A:0000F81020204040F8000000 75 | 005B:007040404040404040407000 76 | 005C:000080804040202010100000 77 | 005D:007010101010101010107000 78 | 005E:000020508800000000000000 79 | 005F:00000000000000000000FC00 80 | 0060:004020100000000000000000 81 | 0061:000000007008788878000000 82 | 0062:00008080F0888888F0000000 83 | 0063:000000007880808078000000 84 | 0064:000008087888888878000000 85 | 0065:000000007088F88078000000 86 | 0066:00003840F840404040000000 87 | 0067:000000007888888878087000 88 | 0068:00008080F088888888000000 89 | 0069:000020006020202070000000 90 | 006A:000010003010101010106000 91 | 006B:0000808090A0E09088000000 92 | 006C:000060202020202070000000 93 | 006D:00000000D8A8A8A8A8000000 94 | 006E:00000000F088888888000000 95 | 006F:000000007088888870000000 96 | 0070:00000000F0888888F0808000 97 | 0071:000000007888888878080800 98 | 0072:00000000B8C0808080000000 99 | 0073:0000000078807008F0000000 100 | 0074:00000040F840404038000000 101 | 0075:000000008888888878000000 102 | 0076:000000008888885020000000 103 | 0077:000000008888A8A8D8000000 104 | 0078:000000008850205088000000 105 | 0079:00000000888850502020C000 106 | 007A:00000000F8102040F8000000 107 | 007B:1820202020C0202020201800 108 | 007C:002020202020202020200000 109 | 007D:C0202020201820202020C000 110 | 007E:000048A89000000000000000 111 | 00A0:000000000000000000000000 112 | 00A1:000000200000202020202000 113 | 00A2:002020708080807020200000 114 | 00A3:0000304040F04040F8000000 115 | 00A4:000000887050708800000000 116 | 00A5:0000885020F820F820000000 117 | 00A6:002020202000202020200000 118 | 00A8:000050000000000000000000 119 | 00A9:0000788494A4948478000000 120 | 00AB:000000002850A05028000000 121 | 00AD:0000000000F8000000000000 122 | 00B0:000060909060000000000000 123 | 00B4:001020000000000000000000 124 | 00B8:00000000000000000020C000 125 | 00BB:00000000A0502850A0000000 126 | 00BF:000000200000204080887000 127 | 00C0:402000202050708888000000 128 | 00C1:102000202050708888000000 129 | 00C2:205000202050708888000000 130 | 00C3:68B000202050708888000000 131 | 00C4:500020205050708888000000 132 | 00C5:205050202050708888000000 133 | 00C6:000038305058709098000000 134 | 00C7:000038408080804038106000 135 | 00C8:402000F880F08080F8000000 136 | 00C9:102000F880F08080F8000000 137 | 00CA:205000F880F08080F8000000 138 | 00CB:5000F88080F08080F8000000 139 | 00CC:402000702020202070000000 140 | 00CD:102000702020202070000000 141 | 00CE:205000702020202070000000 142 | 00CF:500070202020202070000000 143 | 00D0:0000F04848E84850E0000000 144 | 00D1:68B00088C8A8988888000000 145 | 00D2:402000708888888870000000 146 | 00D3:102000708888888870000000 147 | 00D4:205000708888888870000000 148 | 00D5:68B000708888888870000000 149 | 00D6:500070888888888870000000 150 | 00D7:000000004830304800000000 151 | 00D8:0008709898A8C8C870800000 152 | 00D9:402088888888888870000000 153 | 00DA:102088888888888870000000 154 | 00DB:205000888888888870000000 155 | 00DC:500088888888888870000000 156 | 00DD:102000888850202020000000 157 | 00DE:000080F0888888F080000000 158 | 00DF:0000708890B08888B0000000 159 | 00E0:004020007008788878000000 160 | 00E1:001020007008788878000000 161 | 00E2:205000007008788878000000 162 | 00E3:68B000007008788878000000 163 | 00E4:000050007008788878000000 164 | 00E5:304830007008788878000000 165 | 00E6:00000000D82878A0D8000000 166 | 00E7:00000000708080807020C000 167 | 00E8:004020007088F88078000000 168 | 00E9:001020007088F88078000000 169 | 00EA:205000007088F88078000000 170 | 00EB:000050007088F88078000000 171 | 00EC:004020006020202070000000 172 | 00ED:001020006020202070000000 173 | 00EE:205000006020202070000000 174 | 00EF:000050006020202070000000 175 | 00F0:203870107888888870000000 176 | 00F1:68B00000F088888888000000 177 | 00F2:004020007088888870000000 178 | 00F3:001020007088888870000000 179 | 00F4:205000007088888870000000 180 | 00F5:68B000007088888870000000 181 | 00F6:000050007088888870000000 182 | 00F7:0000002000F8002000000000 183 | 00F8:000000087098A8C870800000 184 | 00F9:004020008888888878000000 185 | 00FA:001020008888888878000000 186 | 00FB:205000008888888878000000 187 | 00FC:000050008888888878000000 188 | 00FD:001020008888888878087000 189 | 00FE:00008080F0888888F0808000 190 | 00FF:000050008888888878087000 -------------------------------------------------------------------------------- /fonts/freeglut8x12.hex: -------------------------------------------------------------------------------- 1 | 0020:000000000000000000000000 2 | 0021:001010101010101000100000 3 | 0022:002424240000000000000000 4 | 0023:000024247E247E2424000000 5 | 0024:00103C505038141478100000 6 | 0025:00225224080810242A440000 7 | 0026:000000304848304A443A0000 8 | 0027:003830400000000000000000 9 | 0028:000408081010100808040000 10 | 0029:002010100808081010200000 11 | 002A:00000024187E182400000000 12 | 002B:00000010107C101000000000 13 | 002C:000000000000000038304000 14 | 002D:00000000007E000000000000 15 | 002E:000000000000000010381000 16 | 002F:000202040810204080800000 17 | 0030:001824424242424224180000 18 | 0031:0010305010101010107C0000 19 | 0032:003C424202041820407E0000 20 | 0033:007E0204081C0202423C0000 21 | 0034:00040C142444447E04040000 22 | 0035:007E40405C620202423C0000 23 | 0036:001C2040405C6242423C0000 24 | 0037:007E02040808101020200000 25 | 0038:003C4242423C4242423C0000 26 | 0039:003C4242463A020204380000 27 | 003A:000000103810000010381000 28 | 003B:000000103810000038304000 29 | 003C:000204081020100804020000 30 | 003D:000000007E00007E00000000 31 | 003E:004020100804081020400000 32 | 003F:003C42420204080800080000 33 | 0040:003C42424E52564A403C0000 34 | 0041:0018244242427E4242420000 35 | 0042:00FC4242427C424242FC0000 36 | 0043:003C424040404040423C0000 37 | 0044:00FC42424242424242FC0000 38 | 0045:007E404040784040407E0000 39 | 0046:007E40404078404040400000 40 | 0047:003C424040404E42463A0000 41 | 0048:00424242427E424242420000 42 | 0049:007C101010101010107C0000 43 | 004A:001F04040404040444380000 44 | 004B:004244485060504844420000 45 | 004C:0040404040404040407E0000 46 | 004D:008282C6AA92928282820000 47 | 004E:00424262524A464242420000 48 | 004F:003C424242424242423C0000 49 | 0050:007C4242427C404040400000 50 | 0051:003C4242424242524A3C0200 51 | 0052:007C4242427C504844420000 52 | 0053:003C4240403C0202423C0000 53 | 0054:00FE10101010101010100000 54 | 0055:0042424242424242423C0000 55 | 0056:008282444444282828100000 56 | 0057:0082828282929292AA440000 57 | 0058:008282442810284482820000 58 | 0059:008282442810101010100000 59 | 005A:007E020408102040407E0000 60 | 005B:003C202020202020203C0000 61 | 005C:008080402010080402020000 62 | 005D:007808080808080808780000 63 | 005E:001028440000000000000000 64 | 005F:00000000000000000000FE00 65 | 0060:003818040000000000000000 66 | 0061:000000003C023E42463A0000 67 | 0062:004040405C624242625C0000 68 | 0063:000000003C424040423C0000 69 | 0064:000202023A464242463A0000 70 | 0065:000000003C427E40423C0000 71 | 0066:001C2220207C202020200000 72 | 0067:000000003A444438403C423C 73 | 0068:004040405C62424242420000 74 | 0069:0000100030101010107C0000 75 | 006A:000004000C04040404444438 76 | 006B:004040404448704844420000 77 | 006C:0030101010101010107C0000 78 | 006D:00000000EC92929292820000 79 | 006E:000000005C62424242420000 80 | 006F:000000003C424242423C0000 81 | 0070:000000005C6242625C404040 82 | 0071:000000003A4642463A020202 83 | 0072:000000005C22202020200000 84 | 0073:000000003C42300C423C0000 85 | 0074:000020207C202020221C0000 86 | 0075:0000000044444444443A0000 87 | 0076:000000004444442828100000 88 | 0077:0000000082829292AA440000 89 | 0078:000000004224181824420000 90 | 0079:00000000424242463A02423C 91 | 007A:000000007E040810207E0000 92 | 007B:000E101008300810100E0000 93 | 007C:001010101010101010100000 94 | 007D:00700808100C100808700000 95 | 007E:002454480000000000000000 96 | 00A0:000000000000000000000000 97 | 00A1:001000101010101010100000 98 | 00A2:001038545050543810000000 99 | 00A3:001C22207020202062DC0000 100 | 00A4:000000423C24243C42000000 101 | 00A5:00828244287C107C10100000 102 | 00A6:001010101000101010100000 103 | 00A7:182420182424180424180000 104 | 00A8:006C00000000000000000000 105 | 00A9:384492AAA2AA924438000000 106 | 00AA:0038043C443C007C00000000 107 | 00AB:000012244890482412000000 108 | 00AC:00000000007E020202000000 109 | 00AD:00000000003C000000000000 110 | 00AE:384492AAAAB2AA4438000000 111 | 00AF:007E00000000000000000000 112 | 00B0:001824241800000000000000 113 | 00B1:000010107C1010007C000000 114 | 00B2:304808304078000000000000 115 | 00B3:304810084830000000000000 116 | 00B4:081000000000000000000000 117 | 00B5:0000000042424242665A4000 118 | 00B6:003E74747434141414140000 119 | 00B7:000000000018000000000000 120 | 00B8:000000000000000000000818 121 | 00B9:206020202070000000000000 122 | 00BA:003048483000780000000000 123 | 00BB:000090482412244890000000 124 | 00BC:40C0404042E60A121A060000 125 | 00BD:40C040404CF2020C101E0000 126 | 00BE:6090201092660A121A060000 127 | 00BF:0010001010204042423C0000 128 | 00C0:100800182442427E42420000 129 | 00C1:081000182442427E42420000 130 | 00C2:182400182442427E42420000 131 | 00C3:324C00182442427E42420000 132 | 00C4:242400182442427E42420000 133 | 00C5:182418182442427E42420000 134 | 00C6:006E9090909CF090909E0000 135 | 00C7:003C424040404040423C0810 136 | 00C8:1008007E40407840407E0000 137 | 00C9:0810007E40407840407E0000 138 | 00CA:1824007E40407840407E0000 139 | 00CB:2424007E40407840407E0000 140 | 00CC:2010007C10101010107C0000 141 | 00CD:0810007C10101010107C0000 142 | 00CE:1824007C10101010107C0000 143 | 00CF:2828007C10101010107C0000 144 | 00D0:0078444242E2424244780000 145 | 00D1:64980082C2A2928A86820000 146 | 00D2:2010007C82828282827C0000 147 | 00D3:0810007C82828282827C0000 148 | 00D4:1824007C82828282827C0000 149 | 00D5:6498007C82828282827C0000 150 | 00D6:2828007C82828282827C0000 151 | 00D7:000000422418182442000000 152 | 00D8:023C464A4A525252623C4000 153 | 00D9:1008004242424242423C0000 154 | 00DA:0810004242424242423C0000 155 | 00DB:1824004242424242423C0000 156 | 00DC:2424004242424242423C0000 157 | 00DD:081000444428101010100000 158 | 00DE:00407C4242427C4040400000 159 | 00DF:0038444448504C42425C0000 160 | 00E0:100800003C023E42463A0000 161 | 00E1:040800003C023E42463A0000 162 | 00E2:182400003C023E42463A0000 163 | 00E3:324C00003C023E42463A0000 164 | 00E4:242400003C023E42463A0000 165 | 00E5:182418003C023E42463A0000 166 | 00E6:000000006C127C90926C0000 167 | 00E7:000000003C424040423C0810 168 | 00E8:100800003C427E40423C0000 169 | 00E9:081000003C427E40423C0000 170 | 00EA:182400003C427E40423C0000 171 | 00EB:242400003C427E40423C0000 172 | 00EC:2010000030101010107C0000 173 | 00ED:1020000030101010107C0000 174 | 00EE:3048000030101010107C0000 175 | 00EF:2828000030101010107C0000 176 | 00F0:241828043C424242423C0000 177 | 00F1:324C00005C62424242420000 178 | 00F2:201000003C424242423C0000 179 | 00F3:081000003C424242423C0000 180 | 00F4:182400003C424242423C0000 181 | 00F5:324C00003C424242423C0000 182 | 00F6:242400003C424242423C0000 183 | 00F7:00001010007C001010000000 184 | 00F8:000000023C464A52623C4000 185 | 00F9:2010000044444444443A0000 186 | 00FA:0810000044444444443A0000 187 | 00FB:1824000044444444443A0000 188 | 00FC:2828000044444444443A0000 189 | 00FD:08100000424242463A02423C 190 | 00FE:000040405C624242625C4040 191 | 00FF:24240000424242463A02423C -------------------------------------------------------------------------------- /fonts/tecate/12/TamzenForPowerline6x12b.hex: -------------------------------------------------------------------------------- 1 | 0000:0000007C6C6C6C6C7C000000 2 | 0002:A854A854A854A854A854A854 3 | 0007:000070C8C870000000000000 4 | 000B:3030303030F0000000000000 5 | 000C:0000000000F0303030303030 6 | 000D:00000000003C303030303030 7 | 000E:30303030303C000000000000 8 | 000F:3030303030FC303030303030 9 | 0012:0000000000FC000000000000 10 | 0015:30303030303C303030303030 11 | 0016:3030303030F0303030303030 12 | 0017:3030303030FC000000000000 13 | 0018:0000000000FC303030303030 14 | 0019:303030303030303030303030 15 | 001E:0000386060F86060F8000000 16 | 0020:000000000000000000000000 17 | 0021:0060F0F06060000060000000 18 | 0022:00D8D8D80000000000000000 19 | 0023:0050F85050F8F85050000000 20 | 0024:303078C0603018F060600000 21 | 0025:0060A0A8D02058A828300000 22 | 0026:0060D0D060FCD8D87C000000 23 | 0027:006060600000000000000000 24 | 0028:001830306060606030301800 25 | 0029:00C06060303030306060C000 26 | 002A:00000020F870F82000000000 27 | 002B:0000003030FC303000000000 28 | 002C:000000000000007070306000 29 | 002D:0000000000F8000000000000 30 | 002E:000000000000007070000000 31 | 002F:0000181830306060C0C00000 32 | 0030:000070C8D8E8C8F870000000 33 | 0031:00003070F0303030FC000000 34 | 0032:00007098183060C0F8000000 35 | 0033:0000F81830701818F0000000 36 | 0034:000018385898FC1818000000 37 | 0035:0000F8C0F018189870000000 38 | 0036:000070C0F0C8C8C870000000 39 | 0037:0000F8183030606060000000 40 | 0038:000070C8C870C8C870000000 41 | 0039:000070C8C8C8781870000000 42 | 003A:000000707000007070000000 43 | 003B:000000707000007070306000 44 | 003C:0000183060C0603018000000 45 | 003D:00000000F800F80000000000 46 | 003E:0000C06030183060C0000000 47 | 003F:007098183060000060000000 48 | 0040:0070C8C8D8D8D8C0C0780000 49 | 0041:00002070C8C8F8C8C8000000 50 | 0042:0000F0C8C8F0C8C8F0000000 51 | 0043:000078C0C0C0C0C078000000 52 | 0044:0000F0C8C8C8C8F0E0000000 53 | 0045:0000F8C0C0F0C0C0F8000000 54 | 0046:0000F8C0C0F0C0C0C0000000 55 | 0047:000078C0C0D8C8C878000000 56 | 0048:0000C8C8C8F8C8C8C8000000 57 | 0049:000078303030303078000000 58 | 004A:000018181818989870000000 59 | 004B:0000C8D8F0E0F0D8C8000000 60 | 004C:0000C0C0C0C0C0C0F8000000 61 | 004D:000088D8F8F8A88888000000 62 | 004E:0000C8C8E8F8D8C8C8000000 63 | 004F:000070C8C8C8C8C870000000 64 | 0050:0000F0C8C8F0C0C0C0000000 65 | 0051:000070C8C8C8C8C870100800 66 | 0052:0000F0C8C8F0F0D8C8000000 67 | 0053:000078C0C0701818F0000000 68 | 0054:0000FC303030303030000000 69 | 0055:0000C8C8C8C8C8C870000000 70 | 0056:0000C8C8C8C8707020000000 71 | 0057:000088A8A8F8F8D8D8000000 72 | 0058:0000C8C8707070C8C8000000 73 | 0059:0000C8C8C870303030000000 74 | 005A:0000F830306060C0F8000000 75 | 005B:007860606060606060607800 76 | 005C:0000C0C06060303018180000 77 | 005D:00F03030303030303030F000 78 | 005E:00002070D888000000000000 79 | 005F:00000000000000000000FC00 80 | 0060:006030180000000000000000 81 | 0061:000000007018789878000000 82 | 0062:0000C0C0F0C8C8C8F0000000 83 | 0063:0000000078C0C0C078000000 84 | 0064:000018187898989878000000 85 | 0065:0000000070C8F8C078000000 86 | 0066:00003860F860606060000000 87 | 0067:000000007898989878187000 88 | 0068:0000C0C0F0C8C8C8C8000000 89 | 0069:000030007030303078000000 90 | 006A:00003000703030303030E000 91 | 006B:0000C0C0D8F0F0D8C8000000 92 | 006C:000070303030303078000000 93 | 006D:00000000D8F8F8C8C8000000 94 | 006E:00000000F0C8C8C8C8000000 95 | 006F:0000000070C8C8C870000000 96 | 0070:00000000F0C8C8C8F0C0C000 97 | 0071:000000007898989878181800 98 | 0072:00000000D8E0C0C0C0000000 99 | 0073:0000000078C07018F0000000 100 | 0074:00000060F860606038000000 101 | 0075:00000000C8C8C8C870000000 102 | 0076:00000000C8C8707020000000 103 | 0077:0000000088A8A8F8F8000000 104 | 0078:00000000C8707070C8000000 105 | 0079:00000000C8C8C8703030E000 106 | 007A:00000000F83060C0F8000000 107 | 007B:1C30303030E0303030301C00 108 | 007C:003030303030303030300000 109 | 007D:E0303030301C30303030E000 110 | 007E:000068F8B000000000000000 111 | 00A0:000000000000000000000000 112 | 00A1:0000006000006060F0F06000 113 | 00A2:00303078C0C0C07830300000 114 | 00A3:0000386060F86060F8000000 115 | 00A4:0000C870C8C870C800000000 116 | 00A5:0000C8C870F830F830000000 117 | 00A6:003030303000303030300000 118 | 00A8:00D8D8000000000000000000 119 | 00A9:000070D8A8B8A8D870000000 120 | 00AB:00000000246CD86C24000000 121 | 00AD:0000000000F8000000000000 122 | 00B0:000070C8C870000000000000 123 | 00B4:001830000000000000000000 124 | 00B8:00000000000000000030E000 125 | 00BB:0000000090D86CD890000000 126 | 00BF:0000003000003060C0C87000 127 | 00C0:C060002070C8F8C8C8000000 128 | 00C1:1830002070C8F8C8C8000000 129 | 00C2:70D8002070C8F8C8C8000000 130 | 00C3:68B0002070C8F8C8C8000000 131 | 00C4:D8D8002070C8F8C8C8000000 132 | 00C5:70D8702070C8F8C8C8000000 133 | 00C6:00003870D0D8F0D0D8000000 134 | 00C7:000078C0C0C0C0C07830E000 135 | 00C8:C06000F8C0F0C0C0F8000000 136 | 00C9:183000F8C0F0C0C0F8000000 137 | 00CA:70D800F8C0F0C0C0F8000000 138 | 00CB:D8D800F8C0F0C0C0F8000000 139 | 00CC:603000783030303078000000 140 | 00CD:183000783030303078000000 141 | 00CE:70D800783030303078000000 142 | 00CF:D8D800783030303078000000 143 | 00D0:0000F06868E86870E0000000 144 | 00D1:68B000C8E8F8D8C8C8000000 145 | 00D2:C0600070C8C8C8C870000000 146 | 00D3:18300070C8C8C8C870000000 147 | 00D4:70D80070C8C8C8C870000000 148 | 00D5:68B00070C8C8C8C870000000 149 | 00D6:D8D80070C8C8C8C870000000 150 | 00D7:00000000C87070C800000000 151 | 00D8:001070C8D8E8C8C870400000 152 | 00D9:C06000C8C8C8C8C870000000 153 | 00DA:183000C8C8C8C8C870000000 154 | 00DB:70D800C8C8C8C8C870000000 155 | 00DC:D8D800C8C8C8C8C870000000 156 | 00DD:183000C8C870303030000000 157 | 00DE:0000C0F0C8C8C8F0C0000000 158 | 00DF:0070C8C8D0C8C8C8D0C00000 159 | 00E0:00C060007018789878000000 160 | 00E1:001830007018789878000000 161 | 00E2:0070D8007018789878000000 162 | 00E3:0068B0007018789878000000 163 | 00E4:00D8D8007018789878000000 164 | 00E5:70D870007018789878000000 165 | 00E6:00000000D86878B0F8000000 166 | 00E7:0000000070C0C0C07060C000 167 | 00E8:00C0600070C8F8C078000000 168 | 00E9:0018300070C8F8C078000000 169 | 00EA:0070D80070C8F8C078000000 170 | 00EB:00D8D80070C8F8C078000000 171 | 00EC:006030007030303078000000 172 | 00ED:001830007030303078000000 173 | 00EE:0070D8007030303078000000 174 | 00EF:00D8D8007030303078000000 175 | 00F0:203870307898989870000000 176 | 00F1:0068B000F0C8C8C8C8000000 177 | 00F2:00C0600070C8C8C870000000 178 | 00F3:0018300070C8C8C870000000 179 | 00F4:0070D80070C8C8C870000000 180 | 00F5:0068B00070C8C8C870000000 181 | 00F6:00D8D80070C8C8C870000000 182 | 00F7:0000303000FC003030000000 183 | 00F8:0000001070D8E8C870400000 184 | 00F9:00C06000C8C8C8C870000000 185 | 00FA:00183000C8C8C8C870000000 186 | 00FB:0070D800C8C8C8C870000000 187 | 00FC:00D8D800C8C8C8C870000000 188 | 00FD:00183000C8C8C8C878187000 189 | 00FE:0000C0C0F0C8C8C8F0C0C000 190 | 00FF:00D8D800C8C8C8C878187000 191 | E0A0:C0C0C8DCC8C8983060C0C0C0 192 | E0A1:8080808080F0004464544C44 193 | E0A2:3048484848FCFCF4ECD4ACFC 194 | E0B0:80C0E0F0F8FCFCF8F0E0C080 195 | E0B1:804020100804040810204080 196 | E0B2:040C1C3C7CFCFC7C3C1C0C04 197 | E0B3:040810204080804020100804 -------------------------------------------------------------------------------- /fonts/tecate/12/TamzenForPowerline6x12r.hex: -------------------------------------------------------------------------------- 1 | 0000:000000784848484878000000 2 | 0002:A854A854A854A854A854A854 3 | 0007:000060909060000000000000 4 | 000B:2020202020E0000000000000 5 | 000C:0000000000E0202020202020 6 | 000D:00000000003C202020202020 7 | 000E:20202020203C000000000000 8 | 000F:2020202020FC202020202020 9 | 0012:0000000000FC000000000000 10 | 0015:20202020203C202020202020 11 | 0016:2020202020E0202020202020 12 | 0017:2020202020FC000000000000 13 | 0018:0000000000FC202020202020 14 | 0019:202020202020202020202020 15 | 001E:0000304040F04040F8000000 16 | 0020:000000000000000000000000 17 | 0021:002020202020000020000000 18 | 0022:005050500000000000000000 19 | 0023:005050F85050F85050000000 20 | 0024:101038402010087020200000 21 | 0025:0040A0A8502050A828100000 22 | 0026:0040A0A040A8909068000000 23 | 0027:002020200000000000000000 24 | 0028:001020204040404020201000 25 | 0029:004020201010101020204000 26 | 002A:00000020A870A82000000000 27 | 002B:0000002020F8202000000000 28 | 002C:000000000000006060204000 29 | 002D:0000000000F8000000000000 30 | 002E:000000000000006060000000 31 | 002F:000010102020404080800000 32 | 0030:0000708898A8C88870000000 33 | 0031:00002060A0202020F8000000 34 | 0032:0000708808102040F8000000 35 | 0033:0000F8081030088870000000 36 | 0034:000010305090F81010000000 37 | 0035:0000F880F008088870000000 38 | 0036:0000304080F0888870000000 39 | 0037:0000F8081010202020000000 40 | 0038:000070888870888870000000 41 | 0039:000070888878081060000000 42 | 003A:000000606000006060000000 43 | 003B:000000606000006060204000 44 | 003C:000008102040201008000000 45 | 003D:00000000F800F80000000000 46 | 003E:000080402010204080000000 47 | 003F:007088081020000020000000 48 | 0040:0070888898A8B88080780000 49 | 0041:000020508888F88888000000 50 | 0042:0000F08888F08888F0000000 51 | 0043:000038408080804038000000 52 | 0044:0000F08888888890E0000000 53 | 0045:0000F88080F08080F8000000 54 | 0046:0000F88080F0808080000000 55 | 0047:000038408098884838000000 56 | 0048:0000888888F8888888000000 57 | 0049:000070202020202070000000 58 | 004A:000008080808888870000000 59 | 004B:00008890A0C0A09088000000 60 | 004C:0000808080808080F8000000 61 | 004D:000088D8A8A8888888000000 62 | 004E:000088C8A898888888000000 63 | 004F:000070888888888870000000 64 | 0050:0000F08888F0808080000000 65 | 0051:000070888888888870100800 66 | 0052:0000F08888F0A09088000000 67 | 0053:0000788080700808F0000000 68 | 0054:0000F8202020202020000000 69 | 0055:000088888888888870000000 70 | 0056:000088888850502020000000 71 | 0057:0000888888A8A8A8D8000000 72 | 0058:000088885020508888000000 73 | 0059:000088885020202020000000 74 | 005A:0000F81020204040F8000000 75 | 005B:007040404040404040407000 76 | 005C:000080804040202010100000 77 | 005D:007010101010101010107000 78 | 005E:000020508800000000000000 79 | 005F:00000000000000000000FC00 80 | 0060:004020100000000000000000 81 | 0061:000000007008788878000000 82 | 0062:00008080F0888888F0000000 83 | 0063:000000007880808078000000 84 | 0064:000008087888888878000000 85 | 0065:000000007088F88078000000 86 | 0066:00003840F840404040000000 87 | 0067:000000007888888878087000 88 | 0068:00008080F088888888000000 89 | 0069:000020006020202070000000 90 | 006A:000010003010101010106000 91 | 006B:0000808090A0E09088000000 92 | 006C:000060202020202070000000 93 | 006D:00000000D8A8A8A8A8000000 94 | 006E:00000000F088888888000000 95 | 006F:000000007088888870000000 96 | 0070:00000000F0888888F0808000 97 | 0071:000000007888888878080800 98 | 0072:00000000B8C0808080000000 99 | 0073:0000000078807008F0000000 100 | 0074:00000040F840404038000000 101 | 0075:000000008888888878000000 102 | 0076:000000008888885020000000 103 | 0077:000000008888A8A8D8000000 104 | 0078:000000008850205088000000 105 | 0079:00000000888850502020C000 106 | 007A:00000000F8102040F8000000 107 | 007B:1820202020C0202020201800 108 | 007C:002020202020202020200000 109 | 007D:C0202020201820202020C000 110 | 007E:000048A89000000000000000 111 | 00A0:000000000000000000000000 112 | 00A1:000000200000202020202000 113 | 00A2:002020708080807020200000 114 | 00A3:0000304040F04040F8000000 115 | 00A4:000000887050708800000000 116 | 00A5:0000885020F820F820000000 117 | 00A6:002020202000202020200000 118 | 00A8:000050000000000000000000 119 | 00A9:0000788494A4948478000000 120 | 00AB:000000002850A05028000000 121 | 00AD:0000000000F8000000000000 122 | 00B0:000060909060000000000000 123 | 00B4:001020000000000000000000 124 | 00B8:00000000000000000020C000 125 | 00BB:00000000A0502850A0000000 126 | 00BF:000000200000204080887000 127 | 00C0:402000202050708888000000 128 | 00C1:102000202050708888000000 129 | 00C2:205000202050708888000000 130 | 00C3:68B000202050708888000000 131 | 00C4:500020205050708888000000 132 | 00C5:205050202050708888000000 133 | 00C6:000038305058709098000000 134 | 00C7:000038408080804038106000 135 | 00C8:402000F880F08080F8000000 136 | 00C9:102000F880F08080F8000000 137 | 00CA:205000F880F08080F8000000 138 | 00CB:5000F88080F08080F8000000 139 | 00CC:402000702020202070000000 140 | 00CD:102000702020202070000000 141 | 00CE:205000702020202070000000 142 | 00CF:500070202020202070000000 143 | 00D0:0000F04848E84850E0000000 144 | 00D1:68B00088C8A8988888000000 145 | 00D2:402000708888888870000000 146 | 00D3:102000708888888870000000 147 | 00D4:205000708888888870000000 148 | 00D5:68B000708888888870000000 149 | 00D6:500070888888888870000000 150 | 00D7:000000004830304800000000 151 | 00D8:0008709898A8C8C870800000 152 | 00D9:402088888888888870000000 153 | 00DA:102088888888888870000000 154 | 00DB:205000888888888870000000 155 | 00DC:500088888888888870000000 156 | 00DD:102000888850202020000000 157 | 00DE:000080F0888888F080000000 158 | 00DF:0000708890B08888B0000000 159 | 00E0:004020007008788878000000 160 | 00E1:001020007008788878000000 161 | 00E2:205000007008788878000000 162 | 00E3:68B000007008788878000000 163 | 00E4:000050007008788878000000 164 | 00E5:304830007008788878000000 165 | 00E6:00000000D82878A0D8000000 166 | 00E7:00000000708080807020C000 167 | 00E8:004020007088F88078000000 168 | 00E9:001020007088F88078000000 169 | 00EA:205000007088F88078000000 170 | 00EB:000050007088F88078000000 171 | 00EC:004020006020202070000000 172 | 00ED:001020006020202070000000 173 | 00EE:205000006020202070000000 174 | 00EF:000050006020202070000000 175 | 00F0:203870107888888870000000 176 | 00F1:68B00000F088888888000000 177 | 00F2:004020007088888870000000 178 | 00F3:001020007088888870000000 179 | 00F4:205000007088888870000000 180 | 00F5:68B000007088888870000000 181 | 00F6:000050007088888870000000 182 | 00F7:0000002000F8002000000000 183 | 00F8:000000087098A8C870800000 184 | 00F9:004020008888888878000000 185 | 00FA:001020008888888878000000 186 | 00FB:205000008888888878000000 187 | 00FC:000050008888888878000000 188 | 00FD:001020008888888878087000 189 | 00FE:00008080F0888888F0808000 190 | 00FF:000050008888888878087000 191 | E0A0:C0C0C8DCC8C8983060C0C0C0 192 | E0A1:8080808080F0004464544C44 193 | E0A2:3048484848FCFCF4ECD4ACFC 194 | E0B0:80C0E0F0F8FCFCF8F0E0C080 195 | E0B1:804020100804040810204080 196 | E0B2:040C1C3C7CFCFC7C3C1C0C04 197 | E0B3:040810204080804020100804 --------------------------------------------------------------------------------