2026-06-26 20:05:01 -05:00
|
|
|
#ifndef DVGA_H
|
|
|
|
|
#define DVGA_H
|
|
|
|
|
|
2026-07-10 07:46:46 -05:00
|
|
|
#include <vfs.h>
|
2026-07-14 17:40:30 -05:00
|
|
|
#include <lib/font.h>
|
|
|
|
|
|
|
|
|
|
#define VGA_FRAMEBUFFER 0xFF700000
|
|
|
|
|
|
|
|
|
|
enum vga_color {
|
|
|
|
|
VGA_COLOR_BLACK = 0,
|
|
|
|
|
VGA_COLOR_BLUE = 1,
|
|
|
|
|
VGA_COLOR_GREEN = 2,
|
|
|
|
|
VGA_COLOR_CYAN = 3,
|
|
|
|
|
VGA_COLOR_RED = 4,
|
|
|
|
|
VGA_COLOR_MAGENTA = 5,
|
|
|
|
|
VGA_COLOR_BROWN = 6,
|
|
|
|
|
VGA_COLOR_LIGHT_GREY = 7,
|
|
|
|
|
VGA_COLOR_DARK_GREY = 8,
|
|
|
|
|
VGA_COLOR_LIGHT_BLUE = 9,
|
|
|
|
|
VGA_COLOR_LIGHT_GREEN = 10,
|
|
|
|
|
VGA_COLOR_LIGHT_CYAN = 11,
|
|
|
|
|
VGA_COLOR_LIGHT_RED = 12,
|
|
|
|
|
VGA_COLOR_LIGHT_MAGENTA = 13,
|
|
|
|
|
VGA_COLOR_LIGHT_BROWN = 14,
|
|
|
|
|
VGA_COLOR_WHITE = 15,
|
|
|
|
|
};
|
2026-07-10 07:46:46 -05:00
|
|
|
|
2026-07-14 00:07:50 -05:00
|
|
|
void vga_init(
|
2026-07-14 17:40:30 -05:00
|
|
|
uint32_t fb_paddr,
|
2026-07-14 00:07:50 -05:00
|
|
|
uint32_t fb_width,
|
|
|
|
|
uint32_t fb_height,
|
|
|
|
|
uint32_t fb_pitch,
|
|
|
|
|
uint8_t fb_bpp
|
|
|
|
|
);
|
|
|
|
|
|
2026-07-14 17:40:30 -05:00
|
|
|
uint32_t vga_get_pitch();
|
|
|
|
|
|
2026-07-14 00:07:50 -05:00
|
|
|
void vga_clear_scrn(uint32_t color);
|
2026-07-14 17:40:30 -05:00
|
|
|
void vga_drawchar(char c, int x, int y, psf_font_t* font);
|
2026-06-26 20:05:01 -05:00
|
|
|
|
2026-07-10 07:46:46 -05:00
|
|
|
uint32_t vga_write(vfs_node_t* node, uint32_t offset, uint32_t size, uint8_t* buf);
|
|
|
|
|
|
2026-06-26 20:05:01 -05:00
|
|
|
#endif
|