initial draw code
This commit is contained in:
77
modules/Console_Render/module.jai
Normal file
77
modules/Console_Render/module.jai
Normal file
@@ -0,0 +1,77 @@
|
||||
COLOR :: enum u32 {
|
||||
FG_BLACK :: 0x0000;
|
||||
FG_DARK_BLUE :: 0x0001;
|
||||
FG_DARK_GREEN :: 0x0002;
|
||||
FG_DARK_CYAN :: 0x0003;
|
||||
FG_DARK_RED :: 0x0004;
|
||||
FG_DARK_MAGENTA :: 0x0005;
|
||||
FG_DARK_YELLOW :: 0x0006;
|
||||
FG_GREY :: 0x0007;
|
||||
FG_DARK_GREY :: 0x0008;
|
||||
FG_BLUE :: 0x0009;
|
||||
FG_GREEN :: 0x000A;
|
||||
FG_CYAN :: 0x000B;
|
||||
FG_RED :: 0x000C;
|
||||
FG_MAGENTA :: 0x000D;
|
||||
FG_YELLOW :: 0x000E;
|
||||
FG_WHITE :: 0x000F;
|
||||
BG_BLACK :: 0x0000;
|
||||
BG_DARK_BLUE :: 0x0010;
|
||||
BG_DARK_GREEN :: 0x0020;
|
||||
BG_DARK_CYAN :: 0x0030;
|
||||
BG_DARK_RED :: 0x0040;
|
||||
BG_DARK_MAGENTA :: 0x0050;
|
||||
BG_DARK_YELLOW :: 0x0060;
|
||||
BG_GREY :: 0x0070;
|
||||
BG_DARK_GREY :: 0x0080;
|
||||
BG_BLUE :: 0x0090;
|
||||
BG_GREEN :: 0x00A0;
|
||||
BG_CYAN :: 0x00B0;
|
||||
BG_RED :: 0x00C0;
|
||||
BG_MAGENTA :: 0x00D0;
|
||||
BG_YELLOW :: 0x00E0;
|
||||
BG_WHITE :: 0x00F0;
|
||||
}
|
||||
|
||||
PIXEL_TYPE :: enum u32 {
|
||||
PIXEL_SOLID :: 0x2588;
|
||||
PIXEL_THREEQUARTERS :: 0x2593;
|
||||
PIXEL_HALF :: 0x2592;
|
||||
PIXEL_QUARTER :: 0x2591;
|
||||
}
|
||||
|
||||
Char_Info :: struct {
|
||||
color: COLOR;
|
||||
type : PIXEL_TYPE;
|
||||
}
|
||||
|
||||
Screen :: struct {
|
||||
width : s64;
|
||||
height: s64;
|
||||
buffer: [..] Char_Info;
|
||||
}
|
||||
|
||||
init_screen :: (screen: *Screen, width: s64, height: s64) {
|
||||
buffer : [..] Char_Info;
|
||||
|
||||
array_resize(*buffer, width * height);
|
||||
|
||||
screen.width = width;
|
||||
screen.height = height;
|
||||
screen.buffer = buffer;
|
||||
}
|
||||
|
||||
resize_screen :: (screen: *Screen, width: s64, height: s64) {
|
||||
screen.width = width;
|
||||
screen.height = height;
|
||||
|
||||
array_resize(*screen.buffer, width * height);
|
||||
}
|
||||
|
||||
#load "draw.jai";
|
||||
#load "file_operations.jai";
|
||||
|
||||
#scope_module
|
||||
|
||||
#import "Basic";
|
||||
#import "Math";
|
||||
Reference in New Issue
Block a user