#+OPTIONS: toc:nil * Zongor's Universe Machine :PROPERTIES: :CUSTOM_ID: zongors-universe-machine :END: The universe machine is a Virtual Machine that is intended to create 3D environments (Universes) for video games and/or generic 3d modeling jobs It is inspired by [[https://wiki.xxiivv.com/site/uxn.html][uxn]], [[https://web.archive.org/web/20210913164515/https://www.oocities.org/connorbd/varaq/index.html][var'aq]], [[https://www.zachtronics.com/tis-100/][TIS-100]], [[https://github.com/LMP88959/PL3D-KC][the kings crook engine by EMMIR]] [[http://duskos.org/][Dusk os]], [[https://www.inferno-os.org/][Inferno]], and [[https://plan9.io/plan9/][Plan9]]. The universe machine works as a series of stack based virtual cpu's (node) and ram as a simple hashmap (hram) that each have a single stack which are able to communicate with each other using message passing. The machine code of this node is a series of stack operations which act on the individual node. each node has the ability to ask the kernel to spawn an additional node or to spawn a child node off of itself which sets up a couple of communication channels automatically. The authors main implementation of ZUM in written in LUA/C and uses the [[https://www.libsdl.org/][SDL2]] library to do drawing, sound, and other things.