aboutsummaryrefslogtreecommitdiff
path: root/graphics/colormasks.h
diff options
context:
space:
mode:
Diffstat (limited to 'graphics/colormasks.h')
-rw-r--r--graphics/colormasks.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/graphics/colormasks.h b/graphics/colormasks.h
index 1ab78fccc5..824d980ca3 100644
--- a/graphics/colormasks.h
+++ b/graphics/colormasks.h
@@ -168,6 +168,30 @@ struct ColorMasks<1555> {
};
template<>
+struct ColorMasks<5551> {
+ enum {
+ kBytesPerPixel = 2,
+
+ kAlphaBits = 1,
+ kRedBits = 5,
+ kGreenBits = 5,
+ kBlueBits = 5,
+
+ kAlphaShift = 0,
+ kRedShift = kGreenBits+kBlueBits+kAlphaBits,
+ kGreenShift = kBlueBits+kAlphaBits,
+ kBlueShift = kAlphaBits,
+
+ kAlphaMask = ((1 << kAlphaBits) - 1) << kAlphaShift,
+ kRedMask = ((1 << kRedBits) - 1) << kRedShift,
+ kGreenMask = ((1 << kGreenBits) - 1) << kGreenShift,
+ kBlueMask = ((1 << kBlueBits) - 1) << kBlueShift,
+
+ kRedBlueMask = kRedMask | kBlueMask
+ };
+};
+
+template<>
struct ColorMasks<4444> {
enum {
kBytesPerPixel = 2,