mittos65/src/kernel/include/framebuffer.h

20 lines
554 B
C

#pragma once
#include <stdint.h>
#include <stddef.h>
typedef struct {
uint32_t width;
uint32_t height;
uint32_t bpp;
uint32_t pitch;
void *addr;
void *buffer;
size_t size;
} gfx_context;
#define RGB(r, g, b) (((uint32_t) (r<<16) + (g<<8) + (b)))
void putpixel(gfx_context *ctx, uint64_t x, uint64_t y, uint32_t clr);
gfx_context *make_subarea(gfx_context *ctx, uint64_t x, uint64_t y, uint64_t width, uint64_t height);
void drawCharacter(gfx_context *ctx, uint64_t x, uint64_t y, uint32_t clr_fg, uint32_t clr_bg, char c);