Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local mside
- for _,side in ipairs(rs.getSides()) do
- if peripheral.getType(side) == "modem" then
- mside = side
- break
- end
- end
- if not mside then error("No modem found", 0) end
- print("== NEXUSBOOT 1.0 ==")
- local modem = peripheral.wrap(mside)
- modem.open(1000)
- modem.transmit(1000, 1000, "request")
- local timer = os.startTimer(10)
- local bootcode
- while true do
- local e, p1, p2, p3, p4, p5 = os.pullEventRaw()
- if e == "timer" and p1 == timer then
- break
- elseif e == "modem_message" and p2 == 1000 and type(p4) == "string" and p4:sub(1,6)=="reply:" then
- bootcode = p4:sub(7)
- break
- end
- end
- if bootcode then
- local fn, err = loadstring(bootcode)
- if not fn then printError(err)
- else local ok, err = pcall(fn)
- if not ok then printError(err)
- else printError("Boot code terminated")
- end
- end
- else
- printError("Timeout - Check boot server")
- end
- while true do coroutine.yield() end
Advertisement
Add Comment
Please, Sign In to add comment