remove c logic and data from network, more work on compiled gate funcs

This commit is contained in:
Redo
2022-11-13 22:43:36 -06:00
parent 1eba4bb2fa
commit bcebfed077
6 changed files with 90 additions and 34 deletions

View File

@@ -7,7 +7,9 @@ GateDefinition = {
input = function(gate, argv) end
}
function GateDefinition.new(objref, name, description, init, logic, input, global, ports, datasize, logicfuncc)
local cFuncsByName, cDataSizeByName = require("compiled_sim_gates")
function GateDefinition.new(objref, name, description, init, logic, input, global, ports)
name = collapseescape(name)
init = collapseescape(init)
@@ -23,8 +25,8 @@ function GateDefinition.new(objref, name, description, init, logic, input, globa
ports = ports or {},
num_in_ports = 0,
num_out_ports = 0,
data_size_c = datasize,
logic_function_c = logicfuncc,
data_size_c = cDataSizeByName[name:lower()] or 0,
logic_function_c = cFuncsByName[name:lower()] or 0,
}
local initfunc = loadstring(tostring(init))