MicrOS
keyboard.c File Reference
#include "keyboard.h"
#include "drivers/vga/vga.h"

Functions

void keyboard_init ()
 
unsigned char keyboard_able_to_write ()
 
unsigned char keyboard_is_buffer_empty ()
 
bool keyboard_get_key_state (char scancode)
 
void keyboard_increment_buffer_pointer (volatile uint16_t *const ptr)
 
void keyboard_put_key_to_buffer (unsigned char scancode, unsigned char ascii)
 
bool keyboard_get_key_from_buffer (keyboard_scan_ascii_pair *scan_ascii_pair)
 
unsigned char keyboard_get_scancode ()
 
bool keyboard_handler ()
 
unsigned char keyboard_is_between (unsigned char number, unsigned char l, unsigned char r)
 
unsigned char keyboard_is_between_or_eq (unsigned char number, unsigned char l, unsigned char r)
 
keyboard_state_flagskeyboard_get_state_flags ()
 

Variables

unsigned char kbdus [128]
 
unsigned char kbdusB [128]
 
bool keyboard_keys_state [128]
 
volatile keyboard_state_flags *const kb_state = (keyboard_state_flags *)0xc0000417
 
volatile keyboard_extended_state_flags *const kb_estate = (keyboard_extended_state_flags *)0xc0000496
 
volatile uint16_t *const buffer_start = (uint16_t *)0xc0000480
 
volatile uint16_t *const buffer_end = (uint16_t *)0xc0000482
 
volatile uint16_t *const buffer_write = (uint16_t *)0xc000041C
 
volatile uint16_t *const buffer_read = (uint16_t *)0xc000041A
 

Function Documentation

◆ keyboard_able_to_write()

unsigned char keyboard_able_to_write ( )

◆ keyboard_get_key_from_buffer()

bool keyboard_get_key_from_buffer ( keyboard_scan_ascii_pair scan_ascii_pair)

◆ keyboard_get_key_state()

bool keyboard_get_key_state ( char  scancode)

◆ keyboard_get_scancode()

unsigned char keyboard_get_scancode ( )

◆ keyboard_get_state_flags()

keyboard_state_flags* keyboard_get_state_flags ( )

◆ keyboard_handler()

bool keyboard_handler ( )

◆ keyboard_increment_buffer_pointer()

void keyboard_increment_buffer_pointer ( volatile uint16_t *const  ptr)

◆ keyboard_init()

void keyboard_init ( )

◆ keyboard_is_between()

unsigned char keyboard_is_between ( unsigned char  number,
unsigned char  l,
unsigned char  r 
)

◆ keyboard_is_between_or_eq()

unsigned char keyboard_is_between_or_eq ( unsigned char  number,
unsigned char  l,
unsigned char  r 
)

◆ keyboard_is_buffer_empty()

unsigned char keyboard_is_buffer_empty ( )

◆ keyboard_put_key_to_buffer()

void keyboard_put_key_to_buffer ( unsigned char  scancode,
unsigned char  ascii 
)

Variable Documentation

◆ buffer_end

volatile uint16_t* const buffer_end = (uint16_t *)0xc0000482

◆ buffer_read

volatile uint16_t* const buffer_read = (uint16_t *)0xc000041A

◆ buffer_start

volatile uint16_t* const buffer_start = (uint16_t *)0xc0000480

◆ buffer_write

volatile uint16_t* const buffer_write = (uint16_t *)0xc000041C

◆ kb_estate

volatile keyboard_extended_state_flags* const kb_estate = (keyboard_extended_state_flags *)0xc0000496

◆ kb_state

volatile keyboard_state_flags* const kb_state = (keyboard_state_flags *)0xc0000417

◆ kbdus

unsigned char kbdus[128]

◆ kbdusB

unsigned char kbdusB[128]

◆ keyboard_keys_state

bool keyboard_keys_state[128]