fixed a heisenbug and reset openos
This commit is contained in:
@@ -7,3 +7,4 @@ require("event").listen("init", function()
|
|||||||
dofile(require("shell").resolve("rc", "lua"))
|
dofile(require("shell").resolve("rc", "lua"))
|
||||||
return false
|
return false
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ Most blocks act as 'cables' - use relays and power distributors to create separa
|
|||||||
Welcome to the dark side - here, have some cookies.
|
Welcome to the dark side - here, have some cookies.
|
||||||
Screens can display Unicode - paste the special chars or use unicode.char.
|
Screens can display Unicode - paste the special chars or use unicode.char.
|
||||||
Run `help` or `man programname` for ingame help on programs shipped with OpenOS - start with `man man`.
|
Run `help` or `man programname` for ingame help on programs shipped with OpenOS - start with `man man`.
|
||||||
For more help, there's a wiki at http://ocdoc.cil.li/ - or find the IRC loot disk and join #oc.
|
For more help, there's a wiki at https://ocdoc.cil.li/ - or find the IRC loot disk and join #oc.
|
||||||
Computers have a very basic, built-in speaker - control it using computer.beep().
|
Computers have a very basic, built-in speaker - control it using computer.beep().
|
||||||
Many component methods have a short documentation - use `=component.componentName.methodName` in the Lua interpreter to see it.
|
Many component methods have a short documentation - use `=component.componentName.methodName` in the Lua interpreter to see it.
|
||||||
You can get a list of all attached components using the `components` program.
|
You can get a list of all attached components using the `components` program.
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
os.exit = nil
|
os.exit = nil
|
||||||
os.execute = nil
|
os.execute = nil
|
||||||
|
|
||||||
local sysyieldobj = {}
|
local sysyieldobj = "__SYSYIELD__"
|
||||||
local coroutine = coroutine
|
local coroutine = coroutine
|
||||||
|
|
||||||
local function sysyield()
|
local function sysyield()
|
||||||
@@ -88,7 +88,7 @@ function component.invoke(address, method, ...)
|
|||||||
else
|
else
|
||||||
-- must sync
|
-- must sync
|
||||||
syncedMethodStats = {address, method, ...}
|
syncedMethodStats = {address, method, ...}
|
||||||
coroutine.yield()
|
sysyield()
|
||||||
local rets = syncedMethodStats
|
local rets = syncedMethodStats
|
||||||
syncedMethodStats = nil
|
syncedMethodStats = nil
|
||||||
return table.unpack(rets)
|
return table.unpack(rets)
|
||||||
|
|||||||
@@ -484,7 +484,7 @@ int main(int argc, char **argv) {
|
|||||||
nn_mountComponent(c, eepromCard, 0, false);
|
nn_mountComponent(c, eepromCard, 0, false);
|
||||||
nn_mountComponent(c, managedfs, 1, false);
|
nn_mountComponent(c, managedfs, 1, false);
|
||||||
nn_mountComponent(c, gpuCard, 2, false);
|
nn_mountComponent(c, gpuCard, 2, false);
|
||||||
nn_mountComponent(c, testingfs, 3, false);
|
//nn_mountComponent(c, testingfs, 3, false);
|
||||||
nn_mountComponent(c, testDrive, 4, false);
|
nn_mountComponent(c, testDrive, 4, false);
|
||||||
nn_mountComponent(c, testFlash, 5, false);
|
nn_mountComponent(c, testFlash, 5, false);
|
||||||
while(true) {
|
while(true) {
|
||||||
|
|||||||
Reference in New Issue
Block a user