Internal Functions
Within this section of the manual you will find the functions and commands the Virtual Machine uses to handle data in GPC scripts.

BIT Functions

Function
Description
Zen
Plus
set_bit
Sets one Bit
✔️
✔️
clear_bit
Clears one Bit
✔️
✔️
test_bit
Tests a Bit
✔️
✔️
set_bits
Stores a value into a Bit Index
✔️
✔️
get_bits
Gets a value from the Bit Index
✔️
✔️

Combo Functions

Function
Description
Zen
Plus
combo_run
Runs a combo
✔️
✔️
Checks if a combo is running
✔️
✔️
Stops a running combo
✔️
✔️
Restarts a running combo
✔️
✔️

Math Functions

Function
Description
Zen
Plus
abs
Returns an absolute value of a number
✔️
✔️
inv
Returns the inverse value of a number
✔️
✔️
pow
Raise and value to the specified power
✔️
✔️
isqrt
Calculates an integer square root
✔️
✔️
random
Generates a random value between the specified range
✔️

Device Functions

Function
Description
Zen
Plus
get_rtime
Returns the elapsed time between main iterations in milliseconds
✔️
✔️
get_slot
Returns the active slot number
✔️
✔️
load_slot
Loads a specified slot
✔️
✔️
Returns the identifier of the controller button
✔️
✔️
vm_tctrl
Sets the vm timeout for the next iteration
✔️
✔️
set_polar
Sets the stick output at a given angle and radius with a high resolution value
✔️
set_rgb
Sets the LED on the ZEN to the supplied RGB color
✔️
set_hsb
Sets the LED on the ZEN to the supplied HSB color
✔️
The clamp() function clamps a value between an upper and lower bound. clamp() enables selecting a middle value within a range of values between a defined minimum and maximum. It takes three parameters: a minimum value, a preferred value, and a maximum allowed value.
✔️

LED Display Functions

Function
Description
Zen
Plus
Draws a pixel on the OLED display
✔️
line_oled
Draws a line on the OLED display
✔️
rect_oled
Draws a rectangle on the OLED display
✔️
Draws a circle on the OLED display
✔️
putc_oled
Puts a character into the string buffer for puts_oled
✔️
puts_oled
Draws the characters supplied using putc_oled on the OLED display
✔️
cls_oled
Sets the entire OLED display to a single color
✔️
printf
Draws a string on the OLED display
✔️
Last modified 12d ago