Project

General

Profile

Statistics
| Revision:

root / lab5 / graphics.h @ 122

History | View | Annotate | Download (1.44 KB)

1
#ifndef GRAPHICS_H_INCLUDED
2
#define GRAPHICS_H_INCLUDED
3

    
4
#include <lcom/lcf.h>
5
#include <stdint.h>
6

    
7
#define GET_RED(n)          (0xFF & ((n) >> 16))
8
#define GET_GRE(n)          (0xFF & ((n) >>  8))
9
#define GET_BLU(n)          (0xFF & (n      ))
10
#define SET_RED(n)          (((n)&0xFF) << 16)
11
#define SET_GRE(n)          (((n)&0xFF) <<  8)
12
#define SET_BLU(n)          (((n)&0xFF)      )
13
#define SET_COLOR(r,g,b)    (SET_RED(r) | SET_GRE(g) | SET_BLU(b))
14
#define FAR2PHYS(n)         ((((n)>>12) & 0xFFFFFFF0) + ((n) & 0x0000FFFF))
15
#define PHYS2VIRT(n)
16

    
17
int (get_permission)(unsigned int base_addr, unsigned int size);
18

    
19
//int (get_permissions_first_mbyte)(void);
20

    
21
int (vbe_get_mode_information)(uint16_t mode);
22

    
23
phys_bytes get_phys_addr(void);
24

    
25
unsigned int get_vram_size(void);
26

    
27
uint16_t get_XRes(void);
28

    
29
uint16_t get_YRes(void);
30

    
31
uint16_t get_bits_pixel(void);
32

    
33
uint16_t get_bytes_pixel(void);
34

    
35
uint16_t get_RedMaskSize(void);
36

    
37
uint16_t get_GreenMaskSize(void);
38

    
39
uint16_t get_BlueMaskSize(void);
40

    
41
int (map_vram)(void);
42

    
43
int (free_memory)(void);
44

    
45
int (set_pixel)(uint16_t row, uint16_t col, uint32_t color);
46

    
47
/**
48
 * @brief
49
 * @param mode
50
 * @return
51
 */
52
int (set_graphics_mode)(uint16_t mode);
53

    
54
int (draw_hline)(uint16_t x, uint16_t y, uint16_t len, uint32_t color);
55

    
56
int (draw_rectangle)(uint16_t x, uint16_t y,uint16_t width, uint16_t height, uint32_t color);
57

    
58
#endif /* end of include guard: GRAPHICS_H_INCLUDED */