diff --git a/claw/code-claw.lua b/claw/code-claw.lua index b96e424..469c85b 100644 --- a/claw/code-claw.lua +++ b/claw/code-claw.lua @@ -110,31 +110,29 @@ return { "apps/app-taskmgr.lua" } }, - ["app-klogo"] = { - desc = "KittenOS NEO Logo shower", - v = 2, + ["app-bmpview"] = { + desc = "KittenOS NEO .bmp viewer", + v = 5, deps = { "neo", - "app-klogo-logo" }, dirs = { "apps" }, files = { - "apps/app-klogo.lua", + "apps/app-bmpview.lua", }, }, - ["app-klogo-logo"] = { + ["neo-logo"] = { desc = "KittenOS NEO Logo (data)", v = 5, deps = { }, dirs = { - "data", - "data/app-klogo" + "doc" }, files = { - "data/app-klogo/logo.bmp" + "doc/logo.bmp" }, }, ["app-flash"] = { @@ -179,7 +177,7 @@ return { }, ["neo-meta"] = { desc = "KittenOS NEO: Use 'All' to install to other disks", - v = 2, + v = 5, deps = { "neo", "neo-init", @@ -188,7 +186,8 @@ return { "neo-icecap", "neo-secpolicy", "neo-coreapps", - "app-klogo", + "neo-logo", + "app-bmpview", "app-flash", "app-claw", "app-wget" diff --git a/code/apps/app-klogo.lua b/code/apps/app-bmpview.lua similarity index 91% rename from code/apps/app-klogo.lua rename to code/apps/app-bmpview.lua index 7f8ef18..4cd8997 100644 --- a/code/apps/app-klogo.lua +++ b/code/apps/app-bmpview.lua @@ -5,8 +5,7 @@ local event = require("event")(neo) local neoux = require("neoux")(event, neo) local braille = require("braille") local bmp = require("bmp") -local icecap = neo.requireAccess("x.neo.pub.base", "loadimg") -local file = icecap.open("/logo.bmp", false) +local file = neoux.fileDialog(false) local header = file.read(bmp.headerMinSzBMP) local palette = "" @@ -61,9 +60,6 @@ lcWidth = bitmap.dsSpan local running = true local function decodeRGB(rgb, igp, col) - if igp and bitmap.bpp > 24 then - rgb = math.floor(rgb / 256) - end local r, g, b = math.floor(rgb / 65536) % 256, math.floor(rgb / 256) % 256, rgb % 256 -- the new KittenOS NEO logo is 'sensitive' to dithering, so disable it if not col then @@ -82,6 +78,8 @@ local fp = neoux.tcwindow(bW, bH, { braille.new(1, 1, bW, bH, { selectable = true, get = function (window, x, y, bg, fg, selected, colour) + if x > bitmap.width then return 0, 0, 0 end + if y > bitmap.height then return 0, 0, 0 end if bitmap.ignoresPalette then return decodeRGB(bitmap.getPixel(x - 1, y - 1, 0), true, colour) end @@ -95,9 +93,9 @@ end, 0xFFFFFF, 0) neoux.create(bW, bH, nil, function (w, t, r, ...) if t == "focus" then - if r then + if r and not bitmap.ignoresPalette then local pal = {} - for i = 0, 15 do + for i = 0, math.min(15, bitmap.paletteCol - 1) do pal[i + 1] = bitmap.getPalette(i) end w.recommendPalette(pal) diff --git a/code/data/app-klogo/logo.bmp b/code/doc/logo.bmp similarity index 100% rename from code/data/app-klogo/logo.bmp rename to code/doc/logo.bmp diff --git a/laboratory/reset.sh b/laboratory/reset.sh index 522cca9..ba4e8fa 100755 --- a/laboratory/reset.sh +++ b/laboratory/reset.sh @@ -3,7 +3,7 @@ # This is released into the public domain. # No warranty is provided, implied or otherwise. -cp ocemu.cfg.default ocemu.cfg && rm -rf c1-sda c1-sdb tmpfs +cp ocemu.cfg.default ocemu.cfg && rm -rf c1-sda c1-sdb mkdir c1-sda c1-sdb echo -n c1-sda > c1-eeprom/data.bin cd ..