CHANGELOG 0.1.2.md — Notepad

Added

  • Basic PS/2 mouse support over the i8042 controller's auxiliary port, with IRQ12, standard 3-byte packets and safe degradation to keyboard-only if the mouse does not initialize.
  • A new /dev/mouse0 node with dedicated mouse events for graphical apps, without breaking /dev/input0's previous semantics.
  • The shared ABI extended with struct savanxp_mouse_event, public button flags and new mouse_open / mouse_poll_event helpers in the libc/runtime.
  • A new fullscreen graphical shell desktop, inspired by the visual language of Windows 2000, with a taskbar, Start button, clock and cursor.
  • A new mousetest utility to validate /dev/mouse0, relative movement and buttons from userland.

Changed

  • The kernel's fullscreen layer now registers /dev/mouse0 alongside /dev/fb0 and /dev/input0, and clears the keyboard/mouse queues when acquiring or releasing the exclusive graphics session.
  • Under QEMU, the desktop and mousetest now prefer an absolute virtio-tablet-pci backend when available, while /dev/mouse0 keeps the delta ABI so as not to break already-compiled apps.
  • The kernel now reserves an MMIO window of its own for modern PCI drivers and uses it to map memory BARs safely during boot.
  • In QEMU environments with virtio-tablet-pci, the PS/2 stack stops initializing the auxiliary mouse and stays keyboard-only; the PS/2 mouse is kept as a fallback when virtio-input is not available.
  • RTC/CMOS reading was added to the kernel along with an additive public helper for querying real time from userland; the desktop's clock no longer depends on uptime alone.
  • The builtin shell now lists desktop and mousetest in the interactive help.
  • The main documentation and the SDK v1 reference reflect the new mouse input, the initial desktop and the jump to v0.1.2.

Known limits

  • v0.1.2 exposes only relative movement and basic buttons in the public ABI; internally it can use an absolute pointer under QEMU, but there is no wheel, no real windows, no compositor and no raw input for games.
  • gfx_poll_event is still keyboard-only at this stage; the mouse comes in through /dev/mouse0.
Version 0.1.22026-03-140 changes