From 939ac4319cb047a37ba46f84eff81948063f6954 Mon Sep 17 00:00:00 2001 From: Mitchell Riedstra Date: Wed, 24 Dec 2025 19:49:57 -0500 Subject: Add working webpage for unix v4 --- jslinux-2019-12-21/tinyemu-2019-12-21/ps2.h | 34 +++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 jslinux-2019-12-21/tinyemu-2019-12-21/ps2.h (limited to 'jslinux-2019-12-21/tinyemu-2019-12-21/ps2.h') diff --git a/jslinux-2019-12-21/tinyemu-2019-12-21/ps2.h b/jslinux-2019-12-21/tinyemu-2019-12-21/ps2.h new file mode 100644 index 0000000..47bcfe9 --- /dev/null +++ b/jslinux-2019-12-21/tinyemu-2019-12-21/ps2.h @@ -0,0 +1,34 @@ +/* ps2.c */ +typedef struct PS2MouseState PS2MouseState; +typedef struct PS2KbdState PS2KbdState; + +PS2KbdState *ps2_kbd_init(void (*update_irq)(void *, int), void *update_arg); +PS2MouseState *ps2_mouse_init(void (*update_irq)(void *, int), void *update_arg); +void ps2_write_mouse(void *, int val); +void ps2_write_keyboard(void *, int val); +uint32_t ps2_read_data(void *); +void ps2_queue(void *, int b); +void ps2_keyboard_set_translation(void *opaque, int mode); + +void ps2_put_keycode(PS2KbdState *s, BOOL is_down, int keycode); +void ps2_mouse_event(PS2MouseState *s, + int dx, int dy, int dz, int buttons_state); + +/* vmmouse.c */ +typedef struct VMMouseState VMMouseState; + +VMMouseState *vmmouse_init(PS2MouseState *ps2_mouse); +BOOL vmmouse_is_absolute(VMMouseState *s); +void vmmouse_send_mouse_event(VMMouseState *s, int x, int y, int dz, + int buttons); +void vmmouse_handler(VMMouseState *s, uint32_t *regs); + +/* pckbd.c */ + +typedef struct KBDState KBDState; + +KBDState *i8042_init(PS2KbdState **pkbd, + PS2MouseState **pmouse, + PhysMemoryMap *port_map, + IRQSignal *kbd_irq, IRQSignal *mouse_irq, + uint32_t io_base); -- cgit v1.2.3