diff options
| author | Bobby <[email protected]> | 2025-11-27 10:36:39 +0530 |
|---|---|---|
| committer | Bobby <[email protected]> | 2025-11-27 14:44:11 +0530 |
| commit | d511f3b512fc687e226497fe7553dee9ac45a445 (patch) | |
| tree | e4b09b784ef9139a080c1916e70a7d9cf5bcd813 | |
| parent | c4c9b8c39d528c5c803cafc407a2dbe291635b4b (diff) | |
| download | akiba-d511f3b512fc687e226497fe7553dee9ac45a445.tar.xz akiba-d511f3b512fc687e226497fe7553dee9ac45a445.zip | |
update default font and impl color conversion
| -rw-r--r-- | mirai/graphics/font.zig | 10 | ||||
| -rw-r--r-- | mirai/mirai.zig | 2 | ||||
| -rw-r--r-- | resources/fonts/default.psf | bin | 8142 -> 0 bytes | |||
| -rw-r--r-- | resources/fonts/term.psf | bin | 0 -> 5140 bytes |
4 files changed, 10 insertions, 2 deletions
diff --git a/mirai/graphics/font.zig b/mirai/graphics/font.zig index 715e33e..6ebd3d4 100644 --- a/mirai/graphics/font.zig +++ b/mirai/graphics/font.zig @@ -128,9 +128,17 @@ fn render_glyph(glyph: []const u8, x: u32, y: u32, fb: boot.FramebufferInfo, col const py = y + row; if (px < fb.width and py < fb.height) { const offset = py * (fb.pitch / 4) + px; - pixels[offset] = color; + pixels[offset] = convert_color(color); } } } } } + +fn convert_color(color: u32) u32 { + // Convert RGBA to BGR if needed + const r = (color >> 16) & 0xFF; + const g = (color >> 8) & 0xFF; + const b = color & 0xFF; + return (b << 16) | (g << 8) | r; +} diff --git a/mirai/mirai.zig b/mirai/mirai.zig index 0cbf237..63c1b0b 100644 --- a/mirai/mirai.zig +++ b/mirai/mirai.zig @@ -40,7 +40,7 @@ export fn mirai(multiboot_info_addr: u64) noreturn { if (fs.find_file(system_cluster, "FONTS")) |fonts_dir| { const fonts_cluster = (@as(u32, fonts_dir.first_cluster_high) << 16) | @as(u32, fonts_dir.first_cluster_low); - if (fs.find_file(fonts_cluster, "DEFAULT.PSF")) |font_file| { + if (fs.find_file(fonts_cluster, "TERM.PSF")) |font_file| { var font_buffer: [32768]u8 = undefined; _ = fs.read_file(font_file, &font_buffer) catch {}; _ = font.init(font_buffer[0..font_file.file_size]) catch {}; diff --git a/resources/fonts/default.psf b/resources/fonts/default.psf Binary files differdeleted file mode 100644 index 3658be4..0000000 --- a/resources/fonts/default.psf +++ /dev/null diff --git a/resources/fonts/term.psf b/resources/fonts/term.psf Binary files differnew file mode 100644 index 0000000..96673c4 --- /dev/null +++ b/resources/fonts/term.psf |
