
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