Skip to main content
← PSoXide SDK guides and examples · SDK f2fec1c301f1 · All Cargo features enabled; check feature gates before use.

psx_font/fonts/
ext_latin.rs

1// This file is GENERATED by `psoxide-dev gen-fonts` from
2// `vendor/font8x8_ext_latin.h`. Do NOT edit by hand - re-run the
3// generator if the upstream font source changes.
4//
5// License: Public Domain (see `vendor/PROVENANCE.md`).
6
7use crate::{BitOrder, BitmapFont};
8
9/// Latin-1 supplement, U+00A0..U+00FF.
10///
11/// 8x8 pixels per glyph, 1 bit per pixel, LSB = leftmost.
12pub const EXT_LATIN_BITMAP: [u8; 768] = [
13    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // U+00A0
14    0x18, 0x18, 0x00, 0x18, 0x18, 0x18, 0x18, 0x00, // U+00A1
15    0x18, 0x18, 0x7e, 0x03, 0x03, 0x7e, 0x18, 0x18, // U+00A2
16    0x1c, 0x36, 0x26, 0x0f, 0x06, 0x67, 0x3f, 0x00, // U+00A3
17    0x00, 0x00, 0x63, 0x3e, 0x36, 0x3e, 0x63, 0x00, // U+00A4
18    0x33, 0x33, 0x1e, 0x3f, 0x0c, 0x3f, 0x0c, 0x0c, // U+00A5
19    0x18, 0x18, 0x18, 0x00, 0x18, 0x18, 0x18, 0x00, // U+00A6
20    0x7c, 0xc6, 0x1c, 0x36, 0x36, 0x1c, 0x33, 0x1e, // U+00A7
21    0x33, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // U+00A8
22    0x3c, 0x42, 0x99, 0x85, 0x85, 0x99, 0x42, 0x3c, // U+00A9
23    0x3c, 0x36, 0x36, 0x7c, 0x00, 0x00, 0x00, 0x00, // U+00AA
24    0x00, 0xcc, 0x66, 0x33, 0x66, 0xcc, 0x00, 0x00, // U+00AB
25    0x00, 0x00, 0x00, 0x3f, 0x30, 0x30, 0x00, 0x00, // U+00AC
26    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // U+00AD
27    0x3c, 0x42, 0x9d, 0xa5, 0x9d, 0xa5, 0x42, 0x3c, // U+00AE
28    0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // U+00AF
29    0x1c, 0x36, 0x36, 0x1c, 0x00, 0x00, 0x00, 0x00, // U+00B0
30    0x18, 0x18, 0x7e, 0x18, 0x18, 0x00, 0x7e, 0x00, // U+00B1
31    0x1c, 0x30, 0x18, 0x0c, 0x3c, 0x00, 0x00, 0x00, // U+00B2
32    0x1c, 0x30, 0x18, 0x30, 0x1c, 0x00, 0x00, 0x00, // U+00B3
33    0x18, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // U+00B4
34    0x00, 0x00, 0x66, 0x66, 0x66, 0x3e, 0x06, 0x03, // U+00B5
35    0xfe, 0xdb, 0xdb, 0xde, 0xd8, 0xd8, 0xd8, 0x00, // U+00B6
36    0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, // U+00B7
37    0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x30, 0x1e, // U+00B8
38    0x08, 0x0c, 0x08, 0x1c, 0x00, 0x00, 0x00, 0x00, // U+00B9
39    0x1c, 0x36, 0x36, 0x1c, 0x00, 0x00, 0x00, 0x00, // U+00BA
40    0x00, 0x33, 0x66, 0xcc, 0x66, 0x33, 0x00, 0x00, // U+00BB
41    0xc3, 0x63, 0x33, 0xbd, 0xec, 0xf6, 0xf3, 0x03, // U+00BC
42    0xc3, 0x63, 0x33, 0x7b, 0xcc, 0x66, 0x33, 0xf0, // U+00BD
43    0x03, 0xc4, 0x63, 0xb4, 0xdb, 0xac, 0xe6, 0x80, // U+00BE
44    0x0c, 0x00, 0x0c, 0x06, 0x03, 0x33, 0x1e, 0x00, // U+00BF
45    0x07, 0x00, 0x1c, 0x36, 0x63, 0x7f, 0x63, 0x00, // U+00C0
46    0x70, 0x00, 0x1c, 0x36, 0x63, 0x7f, 0x63, 0x00, // U+00C1
47    0x1c, 0x36, 0x00, 0x3e, 0x63, 0x7f, 0x63, 0x00, // U+00C2
48    0x6e, 0x3b, 0x00, 0x3e, 0x63, 0x7f, 0x63, 0x00, // U+00C3
49    0x63, 0x1c, 0x36, 0x63, 0x7f, 0x63, 0x63, 0x00, // U+00C4
50    0x0c, 0x0c, 0x00, 0x1e, 0x33, 0x3f, 0x33, 0x00, // U+00C5
51    0x7c, 0x36, 0x33, 0x7f, 0x33, 0x33, 0x73, 0x00, // U+00C6
52    0x1e, 0x33, 0x03, 0x33, 0x1e, 0x18, 0x30, 0x1e, // U+00C7
53    0x07, 0x00, 0x3f, 0x06, 0x1e, 0x06, 0x3f, 0x00, // U+00C8
54    0x38, 0x00, 0x3f, 0x06, 0x1e, 0x06, 0x3f, 0x00, // U+00C9
55    0x0c, 0x12, 0x3f, 0x06, 0x1e, 0x06, 0x3f, 0x00, // U+00CA
56    0x36, 0x00, 0x3f, 0x06, 0x1e, 0x06, 0x3f, 0x00, // U+00CB
57    0x07, 0x00, 0x1e, 0x0c, 0x0c, 0x0c, 0x1e, 0x00, // U+00CC
58    0x38, 0x00, 0x1e, 0x0c, 0x0c, 0x0c, 0x1e, 0x00, // U+00CD
59    0x0c, 0x12, 0x00, 0x1e, 0x0c, 0x0c, 0x1e, 0x00, // U+00CE
60    0x33, 0x00, 0x1e, 0x0c, 0x0c, 0x0c, 0x1e, 0x00, // U+00CF
61    0x3f, 0x66, 0x6f, 0x6f, 0x66, 0x66, 0x3f, 0x00, // U+00D0
62    0x3f, 0x00, 0x33, 0x37, 0x3f, 0x3b, 0x33, 0x00, // U+00D1
63    0x0e, 0x00, 0x18, 0x3c, 0x66, 0x3c, 0x18, 0x00, // U+00D2
64    0x70, 0x00, 0x18, 0x3c, 0x66, 0x3c, 0x18, 0x00, // U+00D3
65    0x3c, 0x66, 0x18, 0x3c, 0x66, 0x3c, 0x18, 0x00, // U+00D4
66    0x6e, 0x3b, 0x00, 0x3e, 0x63, 0x63, 0x3e, 0x00, // U+00D5
67    0xc3, 0x18, 0x3c, 0x66, 0x66, 0x3c, 0x18, 0x00, // U+00D6
68    0x00, 0x36, 0x1c, 0x08, 0x1c, 0x36, 0x00, 0x00, // U+00D7
69    0x5c, 0x36, 0x73, 0x7b, 0x6f, 0x36, 0x1d, 0x00, // U+00D8
70    0x0e, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, // U+00D9
71    0x70, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, // U+00DA
72    0x3c, 0x66, 0x00, 0x66, 0x66, 0x66, 0x3c, 0x00, // U+00DB
73    0x33, 0x00, 0x33, 0x33, 0x33, 0x33, 0x1e, 0x00, // U+00DC
74    0x70, 0x00, 0x66, 0x66, 0x3c, 0x18, 0x18, 0x00, // U+00DD
75    0x0f, 0x06, 0x3e, 0x66, 0x66, 0x3e, 0x06, 0x0f, // U+00DE
76    0x00, 0x1e, 0x33, 0x1f, 0x33, 0x1f, 0x03, 0x03, // U+00DF
77    0x07, 0x00, 0x1e, 0x30, 0x3e, 0x33, 0x7e, 0x00, // U+00E0
78    0x38, 0x00, 0x1e, 0x30, 0x3e, 0x33, 0x7e, 0x00, // U+00E1
79    0x7e, 0xc3, 0x3c, 0x60, 0x7c, 0x66, 0xfc, 0x00, // U+00E2
80    0x6e, 0x3b, 0x1e, 0x30, 0x3e, 0x33, 0x7e, 0x00, // U+00E3
81    0x33, 0x00, 0x1e, 0x30, 0x3e, 0x33, 0x7e, 0x00, // U+00E4
82    0x0c, 0x0c, 0x1e, 0x30, 0x3e, 0x33, 0x7e, 0x00, // U+00E5
83    0x00, 0x00, 0xfe, 0x30, 0xfe, 0x33, 0xfe, 0x00, // U+00E6
84    0x00, 0x00, 0x1e, 0x03, 0x03, 0x1e, 0x30, 0x1c, // U+00E7
85    0x07, 0x00, 0x1e, 0x33, 0x3f, 0x03, 0x1e, 0x00, // U+00E8
86    0x38, 0x00, 0x1e, 0x33, 0x3f, 0x03, 0x1e, 0x00, // U+00E9
87    0x7e, 0xc3, 0x3c, 0x66, 0x7e, 0x06, 0x3c, 0x00, // U+00EA
88    0x33, 0x00, 0x1e, 0x33, 0x3f, 0x03, 0x1e, 0x00, // U+00EB
89    0x07, 0x00, 0x0e, 0x0c, 0x0c, 0x0c, 0x1e, 0x00, // U+00EC
90    0x1c, 0x00, 0x0e, 0x0c, 0x0c, 0x0c, 0x1e, 0x00, // U+00ED
91    0x3e, 0x63, 0x1c, 0x18, 0x18, 0x18, 0x3c, 0x00, // U+00EE
92    0x33, 0x00, 0x0e, 0x0c, 0x0c, 0x0c, 0x1e, 0x00, // U+00EF
93    0x1b, 0x0e, 0x1b, 0x30, 0x3e, 0x33, 0x1e, 0x00, // U+00F0
94    0x00, 0x1f, 0x00, 0x1f, 0x33, 0x33, 0x33, 0x00, // U+00F1
95    0x00, 0x07, 0x00, 0x1e, 0x33, 0x33, 0x1e, 0x00, // U+00F2
96    0x00, 0x38, 0x00, 0x1e, 0x33, 0x33, 0x1e, 0x00, // U+00F3
97    0x1e, 0x33, 0x00, 0x1e, 0x33, 0x33, 0x1e, 0x00, // U+00F4
98    0x6e, 0x3b, 0x00, 0x1e, 0x33, 0x33, 0x1e, 0x00, // U+00F5
99    0x00, 0x33, 0x00, 0x1e, 0x33, 0x33, 0x1e, 0x00, // U+00F6
100    0x18, 0x18, 0x00, 0x7e, 0x00, 0x18, 0x18, 0x00, // U+00F7
101    0x00, 0x60, 0x3c, 0x76, 0x7e, 0x6e, 0x3c, 0x06, // U+00F8
102    0x00, 0x07, 0x00, 0x33, 0x33, 0x33, 0x7e, 0x00, // U+00F9
103    0x00, 0x38, 0x00, 0x33, 0x33, 0x33, 0x7e, 0x00, // U+00FA
104    0x1e, 0x33, 0x00, 0x33, 0x33, 0x33, 0x7e, 0x00, // U+00FB
105    0x00, 0x33, 0x00, 0x33, 0x33, 0x33, 0x7e, 0x00, // U+00FC
106    0x00, 0x38, 0x00, 0x33, 0x33, 0x3e, 0x30, 0x1f, // U+00FD
107    0x00, 0x00, 0x06, 0x3e, 0x66, 0x3e, 0x06, 0x00, // U+00FE
108    0x00, 0x33, 0x00, 0x33, 0x33, 0x3e, 0x30, 0x1f, // U+00FF
109];
110
111/// [`BitmapFont`] descriptor for the `ext_latin` bitmap above.
112/// Pass into [`crate::FontAtlas::upload`] to install it in VRAM.
113pub const EXT_LATIN: BitmapFont = BitmapFont {
114    glyph_w: 8,
115    glyph_h: 8,
116    first_char: 0x00a0,
117    glyph_count: 96,
118    bitmap: &EXT_LATIN_BITMAP,
119    glyph_advances: None,
120    advance_x: 8,
121    line_height: 8,
122    bit_order: BitOrder::Lsb,
123};