#include "kernel.h" uint32_t* video_mem = 0; int screen_w = 0; int screen_h = 0; int pitch = 0; uint8_t inb(uint16_t port) { uint8_t r; __asm__("in %%dx, %%al":"=a"(r):"d"(port)); return r; } void outb(uint16_t port, uint8_t data) { __asm__("out %%al, %%dx"::"a"(data),"d"(port)); } void init_graphics(struct multiboot_info* mb) { video_mem = (uint32_t*)(uint32_t)mb->framebuffer_addr; screen_w = mb->framebuffer_width; screen_h = mb->framebuffer_height; pitch = mb->framebuffer_pitch; } void put_pixel(int x, int y, uint32_t color) { if(x>=0 && x=0 && y