From 1e8bad98827b651009a8ad4b8134d8a72a004be3 Mon Sep 17 00:00:00 2001 From: Andreas Baumann Date: Sun, 16 Jul 2017 08:19:05 +0200 Subject: moved registering of mouse/keyboard interrupts into the driver activation instead of having them directly in kernel.c also more standardization of the driver init functions (mouse set_resolution instead of constructor parameters res_x and res_y) --- src/kernel/kernel.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) (limited to 'src/kernel/kernel.c') diff --git a/src/kernel/kernel.c b/src/kernel/kernel.c index d38929c..31d4ec7 100644 --- a/src/kernel/kernel.c +++ b/src/kernel/kernel.c @@ -125,16 +125,11 @@ void kernel_main( void ) global_context.keyboard = (keyboard_t *)malloc( sizeof( keyboard_t ) ); keyboard_init( global_context.keyboard, &handle_keyboard_event, &interrupt, (void *)&global_context ); - interrupt_handler_t keyboard_interrupt_handler; - interrupt_handler_init( &keyboard_interrupt_handler, IRQ_BASE + 0x01, &interrupt, keyboard_handle_interrupt, global_context.keyboard ); - interrupts_register_interrupt_handler( keyboard_interrupt_handler ); driver_manager_add_driver( &global_context.driver_manager, (driver_t *)global_context.keyboard ); global_context.mouse = (mouse_t *)malloc( sizeof( mouse_t ) ); - mouse_init( global_context.mouse, &handle_mouse_event, global_context.vga_text.res_x, global_context.vga_text.res_y, &interrupt, (void *)&global_context ); - interrupt_handler_t mouse_interrupt_handler; - interrupt_handler_init( &mouse_interrupt_handler, IRQ_BASE + 0x0C, &interrupt, mouse_handle_interrupt, global_context.mouse ); - interrupts_register_interrupt_handler( mouse_interrupt_handler ); + mouse_init( global_context.mouse, &handle_mouse_event, &interrupt, (void *)&global_context ); + mouse_set_resolution( global_context.mouse, global_context.vga_text.res_x, global_context.vga_text.res_y ); driver_manager_add_driver( &global_context.driver_manager, (driver_t *)global_context.mouse ); // exit point in case of kernel panic, do this as soon as -- cgit v1.2.3-54-g00ecf