OC-MultICE/doc/api.md

32 lines
1.1 KiB
Markdown
Raw Normal View History

# Base OS API
## `s(name,function,environment)`
Spawns a process from `function` under the name `name`, with the environment table specified in `environment`. Environment doesn't really have much use right now.
## `l() `
Returns the last event.
## `h(...)`
Pushes an event to the queue, with whatever data you specify. Generally used for IPC.
# Module APIs
## library/print.lua
These functions should be display device independent.
### `print(...)`
Displays its arguments on the display device as a string, with a newline.
### `write(...)`
Displays its arguments on the display device as a string, without a newline
## drivers/keyboard.lua
This is a device-specific driver.
### `readln()`
Reads a line of input from the keyboard.
## library/net.lua
Note: Settings have to be set in the kernel module, at the line
```
tM,nP,nID = {}, 4096, 1
```
Where 4096 is the port and 1 is the device ID. Device ID can be any data type, port must be a number.
Network messages can be read from `_G.ev`, they have the type `net_msg`
### `ns(id,po,msg)`
Sends network message `msg` to device `id` on port `po`