4089 Commits

Author SHA1 Message Date
Florian Nücke
ac833cf3bc implemented os.tmpname and io.tmpfile (sort of as they should be) 2013-10-10 18:35:47 +02:00
Florian Nücke
4cdc0757b5 factory functions for file systems based on cc mounts (totally untested) 2013-10-10 18:18:09 +02:00
Florian Nücke
f0f3c96567 Merge branch 'master' of cil.li:oc 2013-10-10 17:47:14 +02:00
Florian Nücke
546a9d419e fading out text rendered on screens in the world instead of immediately cutting off when too far away 2013-10-10 17:45:40 +02:00
Florian Nücke
6485dca78e introduced modification time for file systems; using that to do some checks when synchronizing a real file system with a virtual file system (won't overwrite or delete newer files anymore); cleanup up vfs implementation a little 2013-10-10 16:57:26 +02:00
Florian Nücke
ee5a8a0618 fixed line buffer mode; removed term.screen, term.gpu and term.keyboard and introduced the concept of "primary" components in the component api (via component.isAvailable and component.primary) as a replacement; renamed coroutine.sleep to event.wait and changed the logic so that passing math.huge waits indefinitely (will never return); documented config entries more extensively; added basememory to kernel memory so that it's hidden from os.totalMemory; rs and gpu apis that use the primary redstone/gpu component to avoid having to pass the address everywhere 2013-10-10 14:59:30 +02:00
Johannes Lohrer
89befa20ab new logic for power request (no usage or production still) 2013-10-09 23:20:41 +02:00
Florian Nücke
db0e649b6f labels for disks 2013-10-09 19:46:40 +02:00
Florian Nücke
dfde3d9620 fixed shell crashing when monitor was removed; fixed empty entries being added to history when monitor was removed 2013-10-09 19:32:45 +02:00
Florian Nücke
22ae984b36 buffered file systems (only save data to disk when the world is saving); the data stored to disk directly is really just a copy of the data, which is also stored in the world, since we use a virtual file system for that (same as for /tmp) 2013-10-09 19:26:12 +02:00
Florian Nücke
9459366a06 fixed some issues with file:seek; added a virtual file system implementation that keeps all files in memory, used for a volatile /tmp mount in computers for now (512KB of writable memory that gets wiped on reboot) 2013-10-09 16:38:21 +02:00
Florian Nücke
14bdba937d fixed gui breaking pure servers 2013-10-08 19:37:28 +02:00
Florian Nücke
7b4e15c2f2 redstone cards are working, both input and output. i think. mostly, anyway. 2013-10-08 18:14:06 +02:00
Florian Nücke
67792fc992 hdd capacity info in tooltip only in advanced tooltips 2013-10-07 19:53:22 +02:00
Florian Nücke
e4ef181704 fixed capacity adjustment when creating dirs; copy implementation; fixed bug when opening multiple files at once 2013-10-07 17:20:42 +02:00
Florian Nücke
fa2052ecb0 hard drive tooltips (if initialized; added mkdir to fs driver on lua side; fixed recursive delete (folders) 2013-10-07 16:21:57 +02:00
Florian Nücke
2888ba53e6 some fixes and folder renaming; keeping the rom mounted as root now 2013-10-07 14:44:27 +02:00
Florian Nücke
acd5603844 re-added clipboard pasting (now for term.read()) and fixed clipboard being sent twice (only on key down again now) 2013-10-07 05:05:51 +02:00
Florian Nücke
bc7437769f Merge branch 'master' of cil.li:oc 2013-10-07 03:03:13 +02:00
Florian Nücke
6544161d0d fixed option stringness check in file:read; key up is now sent; much improved input handler, available as term.read, which supports side scrolling, arbitrary length history via a passable table, cursor movement to edit in-line, and general awesomeness; using that reader as the backend for stdin's chunk reader and using io.read() in sh 2013-10-07 03:02:54 +02:00
Johannes Lohrer
4489781e34 Merge branch 'master' of cil.li:oc
Conflicts:
	li/cil/oc/Blocks.scala
2013-10-06 22:51:56 +02:00
Johannes Lohrer
35eae71b29 power calculation on merge splitting and removing nodes 2013-10-06 22:47:39 +02:00
Florian Nücke
d460fe9ced properly returning nil when at eof when reading from files in lua; fixed binary read 2013-10-06 18:54:54 +02:00
Florian Nücke
d363d0322d changed os.clock to be the actual cpu time of the computer and introduced os.uptime as the replacement of the old functionality; dofile now properly throws when loading fails; graphicscard now stores the screen its bound to in the component, which allows for the computer to display messages after it crashed (by sending a display request to neighbors -> graphicscards installed in it); fixed potential timeout in os.signal; wrappers for pcall and xpcall to enforce timeout when they return, too 2013-10-06 18:16:03 +02:00
Florian Nücke
a73ed001dd fixed io.type 2013-10-06 15:10:28 +02:00
Florian Nücke
9886e646de better lua default io lib emulation (with stdin and stdout); fixed idling to use infinite sleep instead of busy idling; some other small fixes on the lua side of things 2013-10-06 14:58:53 +02:00
Florian Nücke
9ca87bef2f underped derped synchronized calls 2013-10-05 21:24:07 +02:00
Florian Nücke
4d7c96052d minor renaming 2013-10-05 21:21:16 +02:00
Florian Nücke
5c29bd94bd file system cleanup; access to total and used space for capped file systems 2013-10-05 20:50:29 +02:00
Johannes Lohrer
26dbecd80f Merge branch 'master' of cil.li:oc
Conflicts:
	javax/annotation/Nullable.java
2013-10-05 14:22:46 +02:00
Johannes Lohrer
26574bf9b6 basic computer network just registering for now 2013-10-05 14:21:46 +02:00
Florian Nücke
9805828195 allowing to return stuff from multi-receiver network messages again; capactiy for file systems and saving handles in fs node; some other minor fixes 2013-10-05 14:17:23 +02:00
Florian Nücke
0441f10a54 hard drive graphics 2013-10-04 11:45:17 +02:00
Florian Nücke
0b9be15189 buffered writing 2013-10-04 11:37:21 +02:00
Florian Nücke
25b9f28d02 not automounting rom; error message for invalid listdirs; autorun for automounted file systems 2013-10-04 01:57:12 +02:00
Florian Nücke
7ef9798cdd made checkarg a kernel provided function again after all; cleaned up some 2013-10-04 01:31:58 +02:00
Florian Nücke
e85afe8518 hard drives. writable frikkin hardrives. next up: limiting their capacity... 2013-10-04 01:13:55 +02:00
Florian Nücke
0927f076ce some more prep work for writable file systems based in save dir; reworked computer code structure a bit, moving more semi-internal stuff into the environment trait 2013-10-03 22:33:48 +02:00
Florian Nücke
2c14ec95b8 cleaned up file system stuff a bit and preparing for writable file systems 2013-10-03 17:58:16 +02:00
Florian Nücke
6689fdace0 fixed computer top texture when on; not sending item tag info to clients anymore (usually only the associated node's address. generally nothing the client needs to know); removed neighbor logic from item component nodes since that is taken care of in sentToVisible now; improved screen rendering performance a bit by caching the display list and updating it when the screen's display changes and not rendering at all when too far away or looking at the screen from a direction where it's impossible to see the text; added some classes that guava needs to compile in scala (only needed at compile time afaik) 2013-10-03 15:57:08 +02:00
Florian Nücke
17476c3b36 documentation 2013-10-03 00:07:30 +02:00
Florian Nücke
f1fd0637a6 Merge branch 'master' of cil.li:oc 2013-10-02 22:17:51 +02:00
Florian Nücke
f4f7bd50a5 fixed event.timer ids; fixed file __gc; fixed render glitch when calling up the interpreter history; fixed folders not being postfixed with "/" in file based filesystem; better error messages (no java class part in the message) 2013-10-02 22:17:11 +02:00
Florian Nücke
1a20aed18a increased ram sizes by one bit shift (reading files - and loading them as scripts - takes quite a bit of ram); network fixes; filesystem fixes 2013-10-02 21:28:58 +02:00
Florian Nücke
90bbdc2633 more work on filesystem stuff 2013-10-02 15:11:49 +02:00
Johannes Lohrer
57c1b0f3a0 BC and UE support 2013-10-01 23:12:33 +02:00
Florian Nücke
59febb056f network rewrite to use uuids as node addresses. this way we won't have to expect addresses to change on network merges, which make a lot of things a much easier (in particular on the Lua side) 2013-10-01 22:10:54 +02:00
Florian Nücke
06eac9254c some import organizing (sorting); switched to converting all strings lua sends via messages to byte arrays instead of strings, since for lua strings are essentially just binary data. this means they have to be converted to strings where appropriate from now on (e.g. the graphics card will convert byte array to utf8 strings for gpu.set) 2013-10-01 15:04:57 +02:00
Florian Nücke
6f18353116 fixed picking of blocks (creative mode) 2013-10-01 11:02:51 +02:00
Florian Nücke
dff6cfa22b removed some reflective calls and similar after making scalac a bit more verbose 2013-10-01 10:38:46 +02:00