Index: head/stand/lua/core.lua =================================================================== --- head/stand/lua/core.lua +++ head/stand/lua/core.lua @@ -451,6 +451,40 @@ return first_value, new_tbl end +function core.getConsoleName() + if loader.getenv("boot_multicons") ~= nil then + if loader.getenv("boot_serial") ~= nil then + return "Dual (Serial primary)" + else + return "Dual (Video primary)" + end + else + if loader.getenv("boot_serial") ~= nil then + return "Serial" + else + return "Video" + end + end +end + +function core.nextConsoleChoice() + if loader.getenv("boot_multicons") ~= nil then + if loader.getenv("boot_serial") ~= nil then + loader.unsetenv("boot_serial") + else + loader.unsetenv("boot_multicons") + loader.setenv("boot_serial", "YES") + end + else + if loader.getenv("boot_serial") ~= nil then + loader.unsetenv("boot_serial") + else + loader.setenv("boot_multicons", "YES") + loader.setenv("boot_serial", "YES") + end + end +end + recordDefaults() hook.register("config.reloaded", core.clearCachedKernels) return core Index: head/stand/lua/menu.lua =================================================================== --- head/stand/lua/menu.lua +++ head/stand/lua/menu.lua @@ -244,6 +244,7 @@ boot_entry_2, menu_entries.prompt, menu_entries.reboot, + menu_entries.console, { entry_type = core.MENU_SEPARATOR, }, @@ -283,6 +284,16 @@ core.boot() end, alias = {"s", "S"}, + }, + console = { + entry_type = core.MENU_ENTRY, + name = function() + return color.highlight("C") .. "ons: " .. core.getConsoleName() + end, + func = function() + core.nextConsoleChoice() + end, + alias = {"c", "C"}, }, prompt = { entry_type = core.MENU_RETURN,