alcedo/kernel/arch/i386/vga.nim

25 lines
502 B
Nim

type
VGA_Colour* {.pure.} = enum
black = 0,
blue = 1,
green = 2,
cyan = 3,
red = 4,
magenta = 5,
brown = 6,
lightGrey = 7,
darkGrey = 8,
lightBlue = 9,
lightGreen = 10,
lightCyan = 11,
lightRed = 12,
lightMagenta = 13,
lightBrown = 14,
white = 15
proc vgaEntryColour*(fg: VGA_Colour, bg: VGA_Colour): int =
result = ord(fg) or (ord(bg) shl 4)
proc vgaEntry*(c: char, colour: int): int16 =
result = int16(int(c) or (colour shl 8))