4 Commits

Author SHA1 Message Date
octacian
12415cc700
Replace input, output, and output_editable APIs for system.* keys
* [set/get]_input -> system.input (string)
* [set/get]_output -> system.output (string)
* set_output_editable -> system.output_editable (bool)
2018-11-24 21:25:27 -08:00
octacian
0326648b0d
Replace OS APIs in favour of a system table
`get_os` and `set_os` APIs are replaced with a `system` table which 
stores the data and limits the valid keys and types via metatables.
2018-07-23 18:39:42 -07:00
octacian
d749eafb28
Preserve, improve environment and replace userdata
* Preserve the environment table so that it must
only be regenerated after a game restart, after
a computer is restarted, and at the tiem of the
initialization of a computer.
* Replace the current meta-based userdata
mechanisms with a global `ram` variable within the
environment, as the preservation of the environment
itself causes its global variables to be preserved
as well
* Make `get_attr` convert meta to a table before
accessing the requested key in order to ensure that
the meta can be correctly accessed even if it is
not a string
* Initialize output_editable meta on node place
2018-06-01 07:50:42 -07:00
octacian
b48d5c2d55
Add nano command
Supplemented by new set_run OS API.
2018-05-31 12:40:26 -07:00