OC-PsychOS/modules/lib/io.lua

30 lines
583 B
Lua

-- not gonna lie, this was just ported from MultICE. Code is terrible and I should rewrite it.
_G.io = {}
io.write = write
function io.open(n,m)
m=m or "rb"
local h=fs.open(n,m)
if h and m:sub(1,1) == "w" then
bt=buffer.ucreate()
function bt.write(_,d)
return fs.write(h,d)
end
function bt.close()
return fs.close(h)
end
return bt
elseif h and m:sub(1,1) == "r" then
bt = buffer.ucreate()
local sb = ""
repeat
bt.b=bt.b..sb
sb=fs.read(h,2048)
until sb == "" or sb == nil
fs.close(h)
coroutine.yield()
return bt
else
return false
end
end