Files
HyperionOS/Src/Hyperion-kernel-v1.0.0/lib/modules/Hyperion/13_keventd.kmod

22 lines
546 B
Plaintext

--:Minify:--
local kernel = ...
local events = kernel.newFifo()
kernel.processes.keventd = function()
while true do
local event = {kernel.computer:getMachineEvent()}
if event[1] then
if event[1]=="keyTyped" then
if event[3]=="\x1b^s" then
kernel.shutdown()
elseif event[3]=="\x1b^r" then
kernel.reboot()
end
end
events.push(event)
end
end
end
kernel.syscalls["IO_getEventAny"]=events.pop