LibCore
Word marked with "*" are primarily for testing purposes for sim owners and not end users.
Word
|
Stack
|
Description
|
dup
|
( n -- n n )
|
Duplicates the top item of the stack
|
. *
|
( n -- )
|
Prints the top item of the stack in console
|
dump *
|
( -- )
|
Dumps the VM's current status in console
|
swap
|
( n1 n2 -- n2 n1)
|
Swaps the order of the top two items in the stack
|
savestate *
|
( n -- )
|
Saves the VM's state to file n.fmo
|
words *
|
( -- )
|
Lists the primitive words loaded to console
|
loadlib
|
( n -- )
|
Loads the words in n.dll
|
: [;]
|
Special
|
Define a user word. The first word following the : in the estack is the name. All words following until ; is the definition of the word
|
savestack
|
( ... n -- )
|
Pops the entire stack into variable n
|
loadstack
|
( n -- ... )
|
Push's the stack saved in variable n
|
clearstack
|
( ... -- )
|
Clears the entire stack
|
if,[else],then
|
( n -- )
|
If n is true, execute words until else or then. If n is false, execute else to then
|
not
|
( n -- n )
|
If n is true, push false, if n is false, push true
|
>
|
( n1 n2 -- n )
|
If n1 > n2, push true else push false
|
<
|
( n1 n2 -- n)
|
If n1 < n2, push true else push false
|
>=
|
( n1 n2 -- n )
|
If n1 >= n2, push true else push false
|
<=
|
( n1 n2 -- n)
|
If n1 <= n2, push true else push false
|
=
|
( n1 n2 -- n )
|
If n1 == n2, push true else push false
|
!=
|
( n1 n2 -- n )
|
If n1 != n2, push true else push false (technically pushes "= not" to estack)
|
!
|
( n1 n2 -- )
|
Saves n1 to variable n2
|
@
|
( n -- n )
|
Pushes variable n to stack
|
LibMath
Word
|
Stack
|
Description
|
+
|
( n1 n2 -- n )
|
Adds n1 and n2 together. If n1 or n2 are strings, result will be a combined string
|
-
|
( n1 n2 -- n)
|
Pushes n1 - n2
|
*
|
( n1 n2 -- n)
|
Pushes n1 * n2
|
/
|
( n1 n2 -- n )
|
Pushes n1 / n2
|
round
|
( n -- n )
|
Rounds n to nearest integer
|
sin
|
( n -- n )
|
Pushes the sin of n
|
cos
|
( n -- n )
|
Pushes the cos of n
|
tan
|
( n -- n )
|
Pushes the tan of n
|
pi
|
( -- n )
|
Pushes PI
|
abs
|
( n -- n )
|
Pushes the absolute value of n
|
sqrt
|
( n -- n)
|
Pushes the square root of n
|
pow
|
( n1 n2 -- n)
|
Pushes n1 to the n2'th power
|
floor
|
( n -- n )
|
Floors n and pushes it
|
vecmag
|
( x y z -- n)
|
Pushes the vecmag of vector <x, y, z>
|
vecnorm
|
( x y z -- x y z )
|
Pushes the normalized vector for <x, y, z>
|
vecdist
|
( x1 y1 z1 x2 y2 z2 -- n )
|
Pushes the distance between <x1, y1, z1> and <x2, y2, z2>
|