#ifndef DRAWING_H
#define DRAWING_H

#include <stdint.h>
#include "multiboot.h"

// Основные параметры экрана (можно заполнять динамически из multiboot)
extern uint32_t* fb_ptr;
extern uint32_t screen_width;
extern uint32_t screen_height;

void draw_init(struct multiboot_info* mbi);
void put_pixel(int x, int y, uint32_t color);
void draw_rect(int x, int y, int w, int h, uint32_t color);
void clear_screen(uint32_t color);
void draw_bmp(uint8_t* data, int x, int y);
void draw_cursor_sprite(uint8_t* bmp_data, int x, int y);
void put_char(char c, int x, int y, uint32_t color);
void draw_string(const char* str, int x, int y, uint32_t color);
void flip_buffer(void);

#endif
