[feat] 简易鼠标驱动
This commit is contained in:
@@ -15,6 +15,8 @@
|
||||
#include <interrupt/idt.h>
|
||||
#include <interrupt/pic.h>
|
||||
#include <interrupt/pit.h>
|
||||
#include <devices/mouse.h>
|
||||
#include <devices/cursor.h>
|
||||
|
||||
extern EFI_SYSTEM_TABLE *ST;
|
||||
|
||||
@@ -146,6 +148,10 @@ extern "C" void kernel_main() {
|
||||
// 注册 IRQ 处理函数(向量 0x20 = PIC_IRQ_BASE + 0)
|
||||
idt_set_handler(PIC_IRQ_BASE + 0, irq_handler);
|
||||
|
||||
// 初始化 PS/2 鼠标驱动
|
||||
serial_write("Sylva: init mouse...\n");
|
||||
mouse_init();
|
||||
|
||||
serial_write("Sylva: init PIT...\n");
|
||||
pit_init();
|
||||
pit_set_tick_handler(scheduler_tick);
|
||||
@@ -160,6 +166,9 @@ extern "C" void kernel_main() {
|
||||
// 初始化合成器(分配后台缓冲区,注册键盘处理)
|
||||
layer_init();
|
||||
|
||||
// 初始化鼠标光标
|
||||
cursor_init();
|
||||
|
||||
// 创建桌面图层(全屏,z=0)
|
||||
layer_t* desktop = layer_create("desktop", LAYER_TYPE_DESKTOP, g_gfx.hr, g_gfx.vr);
|
||||
if (desktop) {
|
||||
|
||||
Reference in New Issue
Block a user