22 Commits (c146f860ccdc4330844c82e6ae65f0dac0e4f37e)
 

Author SHA1 Message Date
cinder c146f860cc rework everything to use stdin/stdout with color 6 months ago
cinder 2fad8db849 bugfixes in coroutines, io.{in,out}put, and checkArgEx
coroutine.resume: the `false` that distinguishes os yields from coroutine.yield() was unintentionally passed back to the caller, and the status of the coroutine wasn't
io.input, io.output: incorrectly testing if the argument is nil caused `io.output()` to set stdout to nil instead of returning it unchanged
checkArgEx: incorrectly bailed early after the first instance of 'integer', 'float', or 'file' that didn't match
6 months ago
cinder f0ed0822b8 implement print(), partially implement io.tmpfile()
tmpfile() now errors because filesystem components don't support r+/w+/a+ modes, instead of because TODO
6 months ago
cinder a1e6b75b22 add preliminary half-tested half-working implementation of the `io` global 6 months ago
cinder 9813dee130 fix spelling and grammar; clarify use of "os yield" not "sysyield"
machine.lua uses "sysyield" to refer to forced yielding of the entire computer back to scala for execution time limits
6 months ago
cinder 4a9fbaab30 bin/tty.lua: ensure gpu is bound to the correct screen before writing repl results 6 months ago
cinder 5014e23401 kernel: split init.lua into separate files, concatenated by build.lua
also properly implements forwarding os yields
6 months ago
cinder 563c63a1c8 hack a lua repl into bin/tty.lua 6 months ago
cinder b046f8b4b5 fix subprocesses not having access to load/loadfile or kitn apis 6 months ago
cinder a18266c96f build.lua: remove some redundant `outdir .. `; move boot.lua into src/ 6 months ago
cinder 3c2a9f50d5 start work on a livedisk
init.lua should run correctly in the absence of any other file (except a user-created /etc/init.lua), so things like the terminal and lua repl will come with the livedisk instead
7 months ago
cinder 50c749c2d1 fix intermittent crashes when spawning new processes 7 months ago
cinder ceec31c4fe build.lua: match long comments correctly; flush and close files properly; implement fs.copy() on top of lfs 7 months ago
cinder 3e5cfde820 add apis for userspace to spawn new processes/threads 7 months ago
cinder ca37976828 add a kernel that can run code in userspace 7 months ago
cinder ff3f9c666f rearrange and document workaround for openos/plan9k weirdness 7 months ago
cinder ed2ef6974c add very basic build step 7 months ago
cinder a432b1396b boot.lua: fix booting from eeprom with empty data; allow booting from non-/init.lua paths 7 months ago
cinder 387daea7f2 boot.lua: polyfill computer.{get,set}BootAddress 7 months ago
cinder e67f77c36d whoops 7 months ago
cinder df67e1157c read maximum amount of /init.lua at once
since we're concatenating everything together, use as few intermediary steps as possible
7 months ago
cinder cac4996000 initial commit with a simplified boot eeprom
kitn is intended to be able to boot from the built-in lua bios, but doesn't need e.g. a primary screen/gpu bound
7 months ago