From 495b1570dba78c4317b9be2d07843981638eb4cb Mon Sep 17 00:00:00 2001 From: mintsuki Date: Mon, 9 Nov 2020 11:15:54 +0100 Subject: [PATCH] vbe: Ensure that the format is xRGB8888 for the graphical menu --- limine-pxe.bin | Bin 25952 -> 26013 bytes limine.bin | Bin 32768 -> 32768 bytes stage2/drivers/vbe.c | 13 ++++++++++++- stage2/drivers/vbe.h | 2 +- stage2/lib/bmp.c | 1 + stage2/lib/term.c | 6 +++++- 6 files changed, 19 insertions(+), 3 deletions(-) diff --git a/limine-pxe.bin b/limine-pxe.bin index daccaffab69e9f5fedcea095440e4fe5dc4371c6..32deb39f0f38d2bcc8b0d394db09c53c3d81cb4e 100644 GIT binary patch delta 24105 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ξUMVpR2od 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 diff --git a/limine.bin b/limine.bin index 41cb7f2cefd7de09c7bdd63c1edac70e72ab1e08..0a799537a1c156640466abca395a1334a38fbbe8 100644 GIT binary patch delta 24090 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 delta 24032 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 Xb;$nz2ZpZFyGW_C;btEhlkjFkn@J7^ diff --git a/stage2/drivers/vbe.c b/stage2/drivers/vbe.c index 1ffd2cb6..fd7bf411 100644 --- a/stage2/drivers/vbe.c +++ b/stage2/drivers/vbe.c @@ -316,9 +316,18 @@ void vbe_putchar(char c) { } } -void vbe_tty_init(int *_rows, int *_cols, uint32_t *_colours, int _margin, int _margin_gradient, struct image *_background) { +bool vbe_tty_init(int *_rows, int *_cols, uint32_t *_colours, int _margin, int _margin_gradient, struct image *_background) { init_vbe(&fbinfo, 0, 0, 0); + // Ensure this is xRGB8888, we only support that for the menu + if (fbinfo.red_mask_size != 8 + || fbinfo.red_mask_shift != 16 + || fbinfo.green_mask_size != 8 + || fbinfo.green_mask_shift != 8 + || fbinfo.blue_mask_size != 8 + || fbinfo.blue_mask_shift != 0) + return false; + vbe_framebuffer = (void *)fbinfo.framebuffer_addr; vbe_width = fbinfo.framebuffer_width; vbe_height = fbinfo.framebuffer_height; @@ -348,6 +357,8 @@ void vbe_tty_init(int *_rows, int *_cols, uint32_t *_colours, int _margin, int _ vbe_plot_background(0, 0, vbe_width, vbe_height); vbe_clear(true); + + return true; } struct vbe_info_struct { diff --git a/stage2/drivers/vbe.h b/stage2/drivers/vbe.h index ead7f284..48e6f9fd 100644 --- a/stage2/drivers/vbe.h +++ b/stage2/drivers/vbe.h @@ -23,7 +23,7 @@ struct vbe_framebuffer_info { bool init_vbe(struct vbe_framebuffer_info *ret, uint16_t target_width, uint16_t target_height, uint16_t target_bpp); -void vbe_tty_init(int *rows, int *cols, uint32_t *colours, int margin, int margin_gradient, struct image *background); +bool vbe_tty_init(int *rows, int *cols, uint32_t *colours, int margin, int margin_gradient, struct image *background); void vbe_putchar(char c); void vbe_clear(bool move); diff --git a/stage2/lib/bmp.c b/stage2/lib/bmp.c index 5f101c9a..5c7a1265 100644 --- a/stage2/lib/bmp.c +++ b/stage2/lib/bmp.c @@ -43,6 +43,7 @@ static uint32_t get_pixel(struct image *this, int x, int y) { size_t pixel_offset = local->pitch * (header->bi_height - y - 1) + x * (header->bi_bpp / 8); + // TODO: Perhaps use masks here, they're there for a reason uint32_t composite = 0; for (int i = 0; i < header->bi_bpp / 8; i++) composite |= (uint32_t)local->image[pixel_offset + i] << (i * 8); diff --git a/stage2/lib/term.c b/stage2/lib/term.c index 17f2f8bf..64c8972a 100644 --- a/stage2/lib/term.c +++ b/stage2/lib/term.c @@ -26,7 +26,11 @@ int term_rows, term_cols; void term_vbe(uint32_t *colours, int margin, int margin_gradient, struct image *background) { term_deinit(); - vbe_tty_init(&term_rows, &term_cols, colours, margin, margin_gradient, background); + if (!vbe_tty_init(&term_rows, &term_cols, colours, margin, margin_gradient, background)) { + // Failed to set VBE properly, default to text mode + term_textmode(); + return; + } raw_putchar = vbe_putchar; clear = vbe_clear;