|
- _G.fd,_G.io = {},{}
- do
- function io.write(d)
- fd[tTasks[cPid].t or 1].w(d)
- end
- function io.read(d,b)
- local r = ""
- repeat
- r=fd[tTasks[cPid].t or 1].r(d)
- coroutine.yield()
- until r or b
- return r
- end
- function print(...)
- for k,v in pairs({...}) do
- io.write(tostring(v).."\n")
- end
- end
-
- local ts = {}
- for a,_ in component.list("screen") do
- ts[#ts+1] = a
- end
- for a,_ in component.list("gpu") do
- local r,w = vtemu(a,table.remove(ts,1))
- fd[#fd+1] = {["r"]=r,["w"]=w,["t"]="t"}
- end
- end
|