socsvn commit: r271551 - soc2014/pedrosouza/lua_loader/head/sys/boot/lua
pedrosouza at FreeBSD.org
pedrosouza at FreeBSD.org
Tue Jul 29 20:10:11 UTC 2014
Author: pedrosouza
Date: Tue Jul 29 20:10:09 2014
New Revision: 271551
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=271551
Log:
Added brand & logo drawing to boot menu
Modified:
soc2014/pedrosouza/lua_loader/head/sys/boot/lua/menu.lua
soc2014/pedrosouza/lua_loader/head/sys/boot/lua/screen.lua
Modified: soc2014/pedrosouza/lua_loader/head/sys/boot/lua/menu.lua
==============================================================================
--- soc2014/pedrosouza/lua_loader/head/sys/boot/lua/menu.lua Tue Jul 29 19:49:38 2014 (r271550)
+++ soc2014/pedrosouza/lua_loader/head/sys/boot/lua/menu.lua Tue Jul 29 20:10:09 2014 (r271551)
@@ -1,5 +1,6 @@
include("/boot/core.lua");
include("/boot/screen.lua");
+include("/boot/drawer.lua");
menu = {};
@@ -26,6 +27,8 @@
screen.clear();
menu.draw(6, 11, opts);
menu.drawbox(4, 10, 40, 10);
+ drawer.drawbrand();
+ drawer.drawlogo();
local ch = string.char(io.getchar());
if (opts[ch] ~= nil) then
local ret = opts[ch].func();
@@ -66,15 +69,14 @@
["2"] = {index = 2, name = "Boot Single user", func = function () core.setSingleUser(true); loader.perform("boot"); end},
["3"] = {index = 3, name = "Escape to lua interpreter", func = function () return true; end},
["4"] = {index = 4, name = "Reboot", func = function () loader.perform("reboot"); end},
- ["5"] = {index = 5, name = "Boot Options", func = function () menu.run(boot_options); return false; end} ,
- ["6"] = {index = 6, name = "Load zfs", func = function () loader.perform("load zfs"); return false; end}
+ ["5"] = {index = 5, name = "Boot Options", func = function () menu.run(boot_options); return false; end}
};
function OnOff(str, b)
if (b) then
- return str .. ": On";
+ return str .. color.escapef(color.GREEN)..": On"..color.escapef(color.WHITE);
else
- return str .. ": Off";
+ return str .. color.escapef(color.RED)..": Off"..color.escapef(color.WHITE);
end
end
Modified: soc2014/pedrosouza/lua_loader/head/sys/boot/lua/screen.lua
==============================================================================
--- soc2014/pedrosouza/lua_loader/head/sys/boot/lua/screen.lua Tue Jul 29 19:49:38 2014 (r271550)
+++ soc2014/pedrosouza/lua_loader/head/sys/boot/lua/screen.lua Tue Jul 29 20:10:09 2014 (r271551)
@@ -1,4 +1,36 @@
screen = {};
+color = {};
+
+color.BLACK = 0;
+color.RED = 1;
+color.GREEN = 2;
+color.YELLOW = 3;
+color.BLUE = 4;
+color.MAGENTA = 5;
+color.CYAN = 6;
+color.WHITE = 7;
+
+color.DEFAULT = 0;
+color.BRIGHT = 1;
+color.DIM = 2;
+
+
+function color.escapef(c)
+ return "\027[3"..c.."m";
+end
+
+function color.escapeb(c)
+ return "\027[4"..c.."m";
+end
+
+function color.escape(fg, bg, att)
+ if not att then att = "" else att = att..";"; end
+ return "\027["..att.."3"..fg..";4"..bg.."m";
+end
+
+function color.default()
+ return "\027[0;37;40m";
+end
function screen.clear()
print("\027[H\027[J");
@@ -14,4 +46,12 @@
function screen.setbackground(c)
print("\027[4"..c.."m");
+end
+
+function screen.defcolor()
+ print(color.default());
+end
+
+function screen.defcursor()
+ print("\027[24;0H");
end
\ No newline at end of file
More information about the svn-soc-all
mailing list