cos2000v2/include/keyboard.h

42 lines
1.2 KiB
C
Raw Normal View History

/*******************************************************************************/
/* COS2000 - Compatible Operating System - LGPL v3 - Hord<72> Nicolas */
/* */
#include "interrupts.h"
#define SCAN_CTRL 0x1D
#define SCAN_LEFTSHIFT 0x2A
#define SCAN_RIGHTSHIFT 0x36
#define SCAN_ALT 0x38
#define SCAN_F1 0x3B
#define SCAN_F2 0x3C
#define SCAN_F3 0x3D
#define SCAN_F4 0x3E
#define SCAN_F5 0x3F
#define SCAN_F6 0x40
#define SCAN_F7 0x41
#define SCAN_F8 0x42
#define SCAN_F9 0x43
#define SCAN_F10 0x44
#define SCAN_F11 0x57
#define SCAN_F12 0x58
#define SCAN_CAPSLOCK 0x3A
#define SCAN_NUMLOCK 0x45
#define SCAN_SCROLLLOCK 0x46
/* bit de statut
0x0100 est reserv<EFBFBD> pour les touches non-ASCII */
#define STATUS_ALT 0x0200
#define STATUS_CTRL 0x0400
#define STATUS_SHIFT 0x0800
#define STATUS_ANY (STATUS_ALT | STATUS_CTRL | STATUS_SHIFT)
#define STATUS_CAPS 0x1000
#define STATUS_NUM 0x2000
#define STATUS_SCRL 0x4000
__attribute__((interrupt)) void keyboard_handler(exception_stack_noerror *caller);
void reboot(void);
void outkbd(u8 port, u8 data);
u8 waitascii(void);
u8 *getstring(u8 * temp);