Jump to content

Colour macro error

Recommended Posts

Hello & welcome to the µGFX community!

Thank you for bringing this to our attention. We'll put it on the ToDo list for checking.
Could you please leave a short description (and if necessary examples) as to why you think that this is the case? Some screenshots might also be helpful if possible :)

Link to post
Share on other sites

Hi Joel,

Below are the results of testing the macros against each other.

r = 0,
g = 255
b = 0

rgb565 = RGB2COLOR(r, g, b)
= 0x07E0

TEST 1 - (((c) & 0x007E)>>3)
r1 = RED_OF(rgb565)
= 0

g1 = GREEN_OF(rgb565)  *
= 12

b1 = BLUE_OF(rgb565)
= 0

rgb565_1 = RGB2COLOR(r1, g1, b1)
= 0x0060
---------> Incorrect

TEST 2 - (((c) & 0x07E0)>>3)
r2 = RED_OF(rgb565)
= 0

g2 = GREEN_OF(rgb565)  *
= 252

b2 = BLUE_OF(rgb565)
= 0

rgb565_2 = RGB2COLOR(r2, g2, b2)
= 0x07E0
---------> Matches pure green original


Link to post
Share on other sites
  • 3 weeks later...

I have finally had a chance to check the line in question.

That line is never used - it is a comment put in for use by the documentation system doxygen. You can see the corresponding conditional compilation on line 132.

The line that actually gets used is the block of macros between line 304 and 313 for true color pixel formats.

So, in a proper compile it will correctly generate the color mapping.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...