|
|
@@ -27,13 +27,9 @@ function vt100emu(gpu) -- takes GPU component proxy *gpu* and returns a function |
|
|
|
end |
|
|
|
|
|
|
|
local function termwrite(s) |
|
|
|
dprint("attempting termwrite") |
|
|
|
dprint("writing "..tostring(s)) |
|
|
|
local wb = "" |
|
|
|
local function flushwb() |
|
|
|
dprint("flush") |
|
|
|
while wb:len() > 0 do |
|
|
|
dprint("flushing "..tostring(wb:len()).." chars: "..tostring(wb)) |
|
|
|
checkCursor() |
|
|
|
local wl = wb:sub(1,mx-cx+1) |
|
|
|
wb = wb:sub(wl:len()+1) |
|
|
@@ -62,7 +58,6 @@ function vt100emu(gpu) -- takes GPU component proxy *gpu* and returns a function |
|
|
|
end |
|
|
|
elseif mode == 1 then |
|
|
|
if cc == "[" then |
|
|
|
dprint("entering escape code mode") |
|
|
|
mode = 2 |
|
|
|
else |
|
|
|
mode = 0 |
|
|
@@ -72,11 +67,9 @@ function vt100emu(gpu) -- takes GPU component proxy *gpu* and returns a function |
|
|
|
cs = cs .. cc |
|
|
|
else |
|
|
|
mode = 0 |
|
|
|
dprint("command: "..tostring(cc)) |
|
|
|
local tA = {} |
|
|
|
for s in cs:gmatch("%d+") do |
|
|
|
tA[#tA+1] = tonumber(s) |
|
|
|
dprint("arg: "..tostring(s)) |
|
|
|
end |
|
|
|
if cc == "H" then |
|
|
|
cx, cy = tA[1] or 1, tA[2] or 1 |
|
|
|