hlfw.ca

drawcpu

ref: 847cd0b5262ebdf9deb3c294bedffc162b4a80d2
dir: /TODO/

View raw version
TODO:
 - [x] /env/fn# to init functions?
 - [-] set up initial connection before handing over to an rc session, to set up binds and mounts?
 - [ ] Set up $path with \#9/$objtype/bin and \#9/rc/bin
 - [x] remove rc builtins aside from mount/bind
 - [x] start.s in libmachdep for each posix-target, just do like tas.c
       - investigate if we want to run this another way instead!
 - [x] have it export a var service=unix
 - [ ] Some people probably want aan?
 - [ ] gui-cocoa try to capture the windows we create so we can send mouse/keyboard to it, plist for launchd
 - [ ] gui-wl cannibalize the wayland shims
 - [ ] Use ScreenCaptureKit to get at the video/audio. Handle resizes the other direction
 - [ ] define the gui interface
 - [x] Makefile librc --> librc.a
 - [ ] RFREND + RFNOMEM could probably be handled in rfork

Remove our rc, just add in all of our syscall intercepts properly.
Kernel space needs:
 - devdraw  - #i: !needed, We use the client exported /dev/draw instead
 - devkbd   - #b: !needed, We use the client exported /dev/kbd instead
 - devmouse - #m: !needed, We use the client exported /dev/mouse instead
 - devaudio - #A: !needed, We use the client exported /dev/audio instead
 - devcmd   - #C: needed OS(1) commands, we already run on host
 - devcons  - #c: needed, /dev/cons
 - devenv   - #e: needed, /env
 - devfs    - #U: needed, local files
 - devip    - #I: needed, networking
 - devlfd   - #L: needed, local fd
 - devmnt   - #M: needed, client shares
 - devpipe  - #|: needed for pipes
 - devroot  - #/: needed, base of stack
 - devssl   - #D: !needed, ssl - eventually add
 - devtls   - #a: !needed, tls - eventually add
 - devproc  - #p: needed, /dev/proc, overlay any existing 
 - devsrv   - #s: !needed, eventually add
 - devbin   - #9: needed, just a path that can use PLAN9 
 - devtab   - meta, needed - add/remove any devices that we add/remove, from here as well