diff options
Diffstat (limited to 'src/screen/drm/pixel.zig')
| -rw-r--r-- | src/screen/drm/pixel.zig | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/screen/drm/pixel.zig b/src/screen/drm/pixel.zig new file mode 100644 index 0000000..7c99e52 --- /dev/null +++ b/src/screen/drm/pixel.zig @@ -0,0 +1,19 @@ + +fn pixel_format_code(comptime a: u8, comptime b: u8, comptime c: u8, comptime d: u8) u32 { + return @as(u32, @intCast(a)) | + (@as(u32, @intCast(b)) << 8) | + (@as(u32, @intCast(c)) << 16) | + (@as(u32, @intCast(d)) << 24); +} + +pub const Pixel = packed struct(u32) { + blue: u8, + green: u8, + red: u8, + _padding: u8 = 0x0, + + pub const Format = enum(u32) { + xrgb8888 = pixel_format_code('X', 'R', '2', '4'), + }; +}; + |