[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Grub2 Graphics In OS
From: |
Andrei Borzenkov |
Subject: |
Re: Grub2 Graphics In OS |
Date: |
Fri, 16 Dec 2016 07:16:19 +0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 |
16.12.2016 07:02, Tristan ross пишет:
>
> I use GRUB2 to boot up and set graphical mode. The function reads the
> multiboot
> headers and uses it to render.
Please post you code in plain text without any extra characters so it is
readable. Or post direct link to your code.
> 7:45 PM, December 15, 2016, Andrei Borzenkov <address@hidden>:
>
> 15.12.2016 22:29, Tristan ross пишет:
>
> Hey, I've got my os to boot with grub2 and it goes into graphics
> mode.
>
>
> "It" - grub or os?
>
> I'm trying to set the rgb color of pixels but I just get blue
> when I
> run my function to generate an rgb color.
>
>
> How is your function related to grub?
>
> Code is at [1]https://github.com/SpaceboyRoss01/ronix
>
>
> There is no single commit message there to understand what you are doing.
>
> Â
>
> Code to generate color:
>
> unsigned int graphics_color(int r,int g,int b) {
> Â Â Â unsigned int color = ((r*1000)+(g*100)+(b*10));
>
>
> This is unreadable and in any case, posting random snippet without
> telling where this snippet comes from is useless. Please post in plain
> text and explain, where this code comes from and what you are attempting
> to do.
>
> Â Â Â switch(graphics_mbi->framebuffer_type) {
> Â Â Â Â Â Â Â case MULTIBOOT_FRAMEBUFFER_TYPE_RGB:
> Â Â Â Â Â Â Â Â Â Â Â color = ((r <<
> graphics_mbi->framebuffer_red_mask_size) - r) <<
> graphics_mbi->framebuffer_red_field_position;
> Â Â Â Â Â Â Â Â Â Â Â color += ((g <<
> graphics_mbi->framebuffer_green_mask_size) - g) <<
> graphics_mbi->framebuffer_green_field_position;
> Â Â Â Â Â Â Â Â Â Â Â color += ((b <<
> graphics_mbi->framebuffer_blue_mask_size) - b) <<
> graphics_mbi->framebuffer_blue_field_position;
> Â Â Â Â Â Â Â Â Â Â Â break;
> Â Â Â Â Â Â Â case MULTIBOOT_FRAMEBUFFER_TYPE_EGA_TEXT:
> Â Â Â Â Â Â Â Â Â Â color = '\\' | ((r*1000)+(g*100)+(b*10));
> Â Â Â Â Â Â Â Â Â Â break;
> Â Â Â }
> Â Â Â #ifdef DEBUG
> Â Â Â debugf("RGB(%d,%d,%d) = %d\n",r,g,b,color);
> Â Â Â #endif
> Â Â Â return color;
> }
> Â
> I'm running graphics_color(255,255,255) which returns -50200321
> How do I fix this so it returns 16777215
> I used the grub2 multiboot documentation.
>
> References
>
> 1. https://github.com/SpaceboyRoss01/ronix
> _______________________________________________
> Help-grub mailing list
> address@hidden <mailto:address@hidden>
> https://lists.gnu.org/mailman/listinfo/help-grub
>
>
>
>
> --
> Sent from Yandex.Mail for mobile
>