diff --git a/Applications/3DTest/3DTest.lua b/Applications/3DTest/3DTest.lua index c1eec524..cc2aae34 100755 --- a/Applications/3DTest/3DTest.lua +++ b/Applications/3DTest/3DTest.lua @@ -331,8 +331,9 @@ local function drawCross(x, y) drawInvertedText(x, y + 1, "┃") end +local oldUptime OCGLView.draw = function(object) - mainContainer.oldClock = os.clock() + oldUptime = computer.uptime() if world then renderWorld() end scene:render() if mainContainer.toolbar.zBufferSwitch.state then @@ -472,7 +473,7 @@ end local FPSCounter = GUI.object(2, 2, 8, 3) FPSCounter.draw = function(FPSCounter) - renderer.renderFPSCounter(FPSCounter.x, FPSCounter.y, tostring(math.ceil(1 / (os.clock() - mainContainer.oldClock) / 10)), 0xFFFF00) + renderer.renderFPSCounter(FPSCounter.x, FPSCounter.y, tostring(math.ceil(1 / (computer.uptime() - oldUptime))), 0xFFFF00) end mainContainer:addChild(FPSCounter) diff --git a/Screensavers/Lines.lua b/Screensavers/Lines.lua index 41092ad1..4f8e6fed 100644 --- a/Screensavers/Lines.lua +++ b/Screensavers/Lines.lua @@ -33,7 +33,7 @@ end ------------------------------------------------------------------------------------- buffer.clear(backgroundColor) -buffer.draw(true) +buffer.drawChanges(true) while true do local eventType = event.pull(0.0001) @@ -54,9 +54,9 @@ while true do buffer.clear(backgroundColor) for i = 1, lineCount - 1 do - buffer.semiPixelLine(t[i].x, t[i].y, t[i + 1].x, t[i + 1].y, lineColor) + buffer.drawSemiPixelLine(t[i].x, t[i].y, t[i + 1].x, t[i + 1].y, lineColor) end - buffer.semiPixelLine(t[1].x, t[1].y, t[lineCount].x, t[lineCount].y, lineColor) - buffer.draw() + buffer.drawSemiPixelLine(t[1].x, t[1].y, t[lineCount].x, t[lineCount].y, lineColor) + buffer.drawChanges() end \ No newline at end of file diff --git a/Screensavers/NyanCat.lua b/Screensavers/NyanCat.lua index b358486c..3ca8a0d2 100644 --- a/Screensavers/NyanCat.lua +++ b/Screensavers/NyanCat.lua @@ -814,7 +814,7 @@ local colors = { } buffer.clear() -buffer.draw(true) +buffer.drawChanges(true) local sizeX,sizeY = 80, 50 while true do @@ -822,10 +822,10 @@ while true do for y=1, sizeY do for x=1, sizeX do local pos = (y <= sizeX and x <= sizeX) and string.sub(nyans[frame][y], x, x) or "," - buffer.square(x * 2 - 1, y, 2, 1, colors[pos], 0x0, " ") + buffer.drawRectangle(x * 2 - 1, y, 2, 1, colors[pos], 0x0, " ") end end - buffer.draw() + buffer.drawChanges() local eventType = event.pull(0) if eventType == "touch" or eventType == "key_down" then return diff --git a/lib/web.lua b/lib/web.lua index 48cbdd80..380241ca 100755 --- a/lib/web.lua +++ b/lib/web.lua @@ -5,7 +5,7 @@ local fs = require("filesystem") ---------------------------------------------------------------------------------------------------- local function encode(data) - data = data:gsub("([^%w%-%_%.%~])", function(char) + data = data:gsub("([^%-%_%.%~])", function(char) return string.format("%%%02X", string.byte(char)) end)