made fetch get the logo, instead of getting preloaded when booting
This commit is contained in:
+19
-9
@@ -1,5 +1,6 @@
|
|||||||
local component = require("component")
|
local component = require("component")
|
||||||
local computer = require("computer")
|
local computer = require("computer")
|
||||||
|
local filesystem = require("filesystem")
|
||||||
|
|
||||||
local function printstat(text)
|
local function printstat(text)
|
||||||
local cursorPosX, cursorPosY = terminal.getCursorPos()
|
local cursorPosX, cursorPosY = terminal.getCursorPos()
|
||||||
@@ -7,18 +8,27 @@ local function printstat(text)
|
|||||||
terminal.write(text .. "\n", false)
|
terminal.write(text .. "\n", false)
|
||||||
end
|
end
|
||||||
|
|
||||||
terminal.write(_OSLOGO, false)
|
local logo = ""
|
||||||
|
local handle, tmpdata = filesystem.open("/halyde/config/oslogo.ans", "r"), nil
|
||||||
|
repeat
|
||||||
|
tmpdata = handle:read(math.inf or math.maxinteger)
|
||||||
|
logo = logo .. (tmpdata or "")
|
||||||
|
until not tmpdata
|
||||||
|
|
||||||
|
terminal.write(logo, false)
|
||||||
local cursorPosX, cursorPosY = terminal.getCursorPos()
|
local cursorPosX, cursorPosY = terminal.getCursorPos()
|
||||||
terminal.setCursorPos(cursorPosX, cursorPosY - 17)
|
terminal.setCursorPos(cursorPosX, cursorPosY - 17)
|
||||||
printstat("\27[92mOS\27[0m: ".._OSVERSION)
|
printstat("\27[92mOS\27[0m: " .. _OSVERSION)
|
||||||
printstat("\27[92mArchitecture\27[0m: ".._VERSION)
|
printstat("\27[92mArchitecture\27[0m: " .. _VERSION)
|
||||||
local componentCounter = 0
|
local componentCounter = 0
|
||||||
for _, _ in component.list() do
|
for _, _ in component.list() do
|
||||||
componentCounter = componentCounter + 1
|
componentCounter = componentCounter + 1
|
||||||
end
|
end
|
||||||
printstat("\27[92mComponents\27[0m: "..tostring(componentCounter))
|
printstat("\27[92mComponents\27[0m: " .. tostring(componentCounter))
|
||||||
printstat("\27[92mCoroutines\27[0m: "..tostring(#tsched.getTasks()))
|
printstat("\27[92mCoroutines\27[0m: " .. tostring(#tsched.getTasks()))
|
||||||
printstat("\27[92mBattery\27[0m: "..tostring(math.floor(computer.energy() / computer.maxEnergy() * 1000 + 0.5) / 10).."%")
|
printstat(
|
||||||
|
"\27[92mBattery\27[0m: " .. tostring(math.floor(computer.energy() / computer.maxEnergy() * 1000 + 0.5) / 10) .. "%"
|
||||||
|
)
|
||||||
local totalMemory = computer.totalMemory()
|
local totalMemory = computer.totalMemory()
|
||||||
local usedMemory = computer.totalMemory() - computer.freeMemory()
|
local usedMemory = computer.totalMemory() - computer.freeMemory()
|
||||||
local totalMemoryString
|
local totalMemoryString
|
||||||
@@ -41,7 +51,7 @@ elseif convert(usedMemory, "B", "KiB") >= 1 then
|
|||||||
else
|
else
|
||||||
usedMemoryString = tostring(usedMemory) .. " B"
|
usedMemoryString = tostring(usedMemory) .. " B"
|
||||||
end
|
end
|
||||||
printstat("\27[92mMemory\27[0m: "..usedMemoryString.." / "..totalMemoryString)
|
printstat("\27[92mMemory\27[0m: " .. usedMemoryString .. " / " .. totalMemoryString)
|
||||||
local totalDisk = component.invoke(computer.getBootAddress(), "spaceTotal")
|
local totalDisk = component.invoke(computer.getBootAddress(), "spaceTotal")
|
||||||
local usedDisk = component.invoke(computer.getBootAddress(), "spaceUsed")
|
local usedDisk = component.invoke(computer.getBootAddress(), "spaceUsed")
|
||||||
local totalDiskString
|
local totalDiskString
|
||||||
@@ -64,9 +74,9 @@ elseif convert(usedDisk, "B", "KiB") >= 1 then
|
|||||||
else
|
else
|
||||||
usedDiskString = tostring(usedDisk) .. " B"
|
usedDiskString = tostring(usedDisk) .. " B"
|
||||||
end
|
end
|
||||||
printstat("\27[92mDisk\27[0m: "..usedDiskString.." / "..totalDiskString)
|
printstat("\27[92mDisk\27[0m: " .. usedDiskString .. " / " .. totalDiskString)
|
||||||
local width, height = component.invoke(component.list("gpu")(), "getResolution")
|
local width, height = component.invoke(component.list("gpu")(), "getResolution")
|
||||||
printstat("\27[92mResolution\27[0m: "..tostring(width).."x"..tostring(height).."\n")
|
printstat("\27[92mResolution\27[0m: " .. tostring(width) .. "x" .. tostring(height) .. "\n")
|
||||||
printstat("\27[40m \27[41m \27[42m \27[43m \27[44m \27[45m \27[46m \27[47m ")
|
printstat("\27[40m \27[41m \27[42m \27[43m \27[44m \27[45m \27[46m \27[47m ")
|
||||||
printstat("\27[100m \27[101m \27[102m \27[103m \27[104m \27[105m \27[106m \27[107m ")
|
printstat("\27[100m \27[101m \27[102m \27[103m \27[104m \27[105m \27[106m \27[107m ")
|
||||||
local cursorPosX, cursorPosY = terminal.getCursorPos()
|
local cursorPosX, cursorPosY = terminal.getCursorPos()
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
local loadfile = ...
|
local loadfile = ...
|
||||||
local filesystem = assert(loadfile("/lib/filesystem.lua")(loadfile))
|
local filesystem = assert(loadfile("/lib/filesystem.lua")(loadfile))
|
||||||
_G._OSVERSION = "HALYDE VERSION" -- TODO: Put this in a separate config file
|
_G._OSVERSION = "HALYDE VERSION" -- TODO: Put this in a separate config file
|
||||||
_G._OSLOGO = ""
|
|
||||||
_G._PUBLIC = {}
|
_G._PUBLIC = {}
|
||||||
_G._PUBLIC.unicode = assert(loadfile("/lib/unicode.lua")(loadfile))
|
_G._PUBLIC.unicode = assert(loadfile("/lib/unicode.lua")(loadfile))
|
||||||
local component = assert(loadfile("/lib/component.lua")(loadfile))
|
local component = assert(loadfile("/lib/component.lua")(loadfile))
|
||||||
@@ -15,13 +14,6 @@ local log = assert(loadfile("/lib/log.lua")(loadfile))
|
|||||||
|
|
||||||
log.kernel.info("Bound GPU to screen " .. tostring(screenAddress))
|
log.kernel.info("Bound GPU to screen " .. tostring(screenAddress))
|
||||||
|
|
||||||
local handle, tmpdata = filesystem.open("/halyde/config/oslogo.ans", "r"), nil
|
|
||||||
repeat
|
|
||||||
tmpdata = handle:read(math.huge)
|
|
||||||
_OSLOGO = _OSLOGO .. (tmpdata or "")
|
|
||||||
until not tmpdata
|
|
||||||
handle:close()
|
|
||||||
|
|
||||||
log.kernel.info("Loaded OS logo")
|
log.kernel.info("Loaded OS logo")
|
||||||
|
|
||||||
_G.package = { ["preloaded"] = {} }
|
_G.package = { ["preloaded"] = {} }
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
local module = {}
|
local module = {}
|
||||||
|
|
||||||
module.dependencies = {"terminal"}
|
module.dependencies = { "terminal" }
|
||||||
|
|
||||||
function module.check()
|
function module.check()
|
||||||
return true -- This module should always be loaded
|
return true -- This module should always be loaded
|
||||||
@@ -11,7 +11,6 @@ function module.init()
|
|||||||
"print",
|
"print",
|
||||||
"_VERSION",
|
"_VERSION",
|
||||||
"_OSVERSION",
|
"_OSVERSION",
|
||||||
"_OSLOGO",
|
|
||||||
"assert",
|
"assert",
|
||||||
"error",
|
"error",
|
||||||
"getmetatable",
|
"getmetatable",
|
||||||
@@ -39,7 +38,7 @@ function module.init()
|
|||||||
"table",
|
"table",
|
||||||
"checkArg",
|
"checkArg",
|
||||||
"utf8",
|
"utf8",
|
||||||
"convert"
|
"convert",
|
||||||
}
|
}
|
||||||
for _, value in ipairs(publicTable) do
|
for _, value in ipairs(publicTable) do
|
||||||
_G._PUBLIC[value] = table.copy(_G[value])
|
_G._PUBLIC[value] = table.copy(_G[value])
|
||||||
|
|||||||
Reference in New Issue
Block a user