collapseos/emul/z80/ps2_kbd.h

17 lines
406 B
C

#include <stdint.h>
#include <stdbool.h>
#include "emul.h"
#define KBD_BUFSZ 0x10
typedef struct {
uint8_t kc; // last keycode to be pressed. 0 means none.
bool breaking; // whether we should send 0xf0 before kc
Tristate *TH;
} Kbd;
void kbd_init(Kbd *kbd, Tristate *TH);
void kbd_pressshift(Kbd *kbd, bool ispressed);
void kbd_presskey(Kbd *kbd, uint8_t keycode);
uint8_t kbd_rd(Kbd *kbd);