SmileBASIC 3.6.0 Interpreter
sb-interpreter sb-docs smilebasic-4 function-list.md
12 kB
Markdown
at main


title: Function List slug: docs-sb4-function-list system: SmileBASIC 4 type: reference source: https://smilebasicsource.com/forum/thread/docs-sb4-function-list content_id: 19450 created: 2020-05-10 scraped: 2026-06-21 #

Function List #

someone improve this later also these should be links

| ABS | absolute value | | ACCEL | read accelerometer | | ACLS | reset graphics | | ACOS | inverse cosine | | ANIMDEF | define sprite/text animation | | ARRAY# | create float array | | ARRAY$ | create string array | | ARRAY% | create int array | | ARYOP | array operation | | ASC | convert character to ascii value | | ASIN | inverse sine | | ATAN | inverse tangent | | ATTR | set text rotation attribute | | BACKCOLOR | set background color | | BEEP | play sound effect | | BEEPPAN | set beep pan | | BEEPPIT | set beep pitch | | BEEPSTOP | stop beep | | BEEPVOL | set beep volume | | BGMCHK | check music | | BGMCLEAR | clear song definition | | BGMCONT | unpause music | | BGMPAUSE | pause music | | BGMPITCH | set music pitch | | BGMPLAY | play music | | BGMSET | define song | | BGMSETD | define song with DATA | | BGMSTOP | stop music | | BGMVAR | get/set music variable | | BGMVOL | set music volume | | BGMWET | set music effector strength | | BIN$ | convert number to binary string | | BIQUAD | apply biquadratic filter | | BQPARAM | generate BIQUAD filter | | BREAK | exit loop | | BREPEAT | set button repeat rate | | BUTTON | get button input | | CALL | call function by name | | CALLIDX | get sprite/text id in callback | | CASE | start CASE block | | CEIL | round number upwards | | CHKCALL | check if function exists | | CHKCHR | get charcater from text screen | | CHKFILE | check if file exists | | CHKLABEL | check if label exists | | CHKMML | check if MML is valid | | CHKVAR | check if variable exists | | CHR$ | convert ascii value to string | | CLASSIFY | check if number is infinity or NaN | | CLIPBOARD | get/set editor clipboard | | CLS | clear text screen | | COLOR | set text color | | COMMON | define shared function | | CONST | define constant | | CONTINUE | jump to start of loop | | CONTROLLER | get controller status | | COPY | copy data between arrays | | COS | cosine | | COSH | hyperbolic cosine | | DATA | define data | | DATE$ | get current date | | DEC | decrement variable | | DEFARG | get function argument | | DEFARGC | get function argument count | | DEFOUT | set function output | | DEFOUTC | get function output count | | DEG | convert radians to degrees | | DELETE | delete file | | DIALOG | display dialog | | DIM | create array, get array dimensions | | DTREAD | decode date string | | EFCEN | enable/disable effector | | EFCSET | set effector parameters | | EFCWET | set effector strength | | ELSE | | | ELSEIF | | | END | end function | | ENDCASE | end case block | | ENDIF | end if | | ENDLOOP | end loop | | ENUM | define enum | | ENVFOCUS | get/set envprogram focus | | ENVINPUT$ | get direct mode history | | ENVLOAD | copy data from the main interpreter to the subprogram interpreter | | ENVLOCATE | ? | | ENVPROJECT | set subprogram project | | ENVSAVE | copy data from subprogram to main program | | ENVSTAT | get/set interpreter status | | ENVTYPE | check which interpreter is running | | EXEC | execute code in slot | | EXP | calculate power of /e/ | | FADE | set screen fade color | | FADECHK | check screen fade status | | FFT | fast fourier transform | | FFTWFN | generate FFT window | | FILES | get list of files | | FILL | fill array | | FLOAT | convert int to float | | FLOOR | round number down | | FONTINFO | get info about character | | FOR | for loop | | FORMAT$ | string formatting | | FREEMEM | check free memory | | GARRAY | get graphics page array | | GBOX | draw unfilled rectangle | | GCIRCLE | draw unfilled circle | | GCLIP | set graphics drawing region | | GCLS | clear graphics page | | GCOLOR | set graphics drawing color | | GCOPY | copy graphics data | | GFILL | draw filled rectangle | | GLINE | draw line | | GLOAD | load data from an array to the graphics page | | GOSUB | run subroutine | | GOTO | goto | | GPAINT | fill enclosed area on graphics page | | GPGET | get color of pixel | | GPSET | draw pixel | | GPUTCHR | draw text on graphics page | | GSAMPLE | set graphics wrap mode | | GSAVE | save graphics data to array | | GTARGET | set current graphics page | | GTRI | draw filled triangle | | GUPDATE | update graphics after modifying GARRAY | | GYROA | get gyroscope angle | | GYROSYNC | reset gyroscope | | GYROV | get gyroscope velocity | | HELPGET | get data from manual | | HELPINFO | get data from manual | | HEX$ | convert number to hexadecimal string | | HSV | convert color to HSV | | IF | if | | IFFT | inverse fast fourier transform | | INC | increment variable | | INKEY$ | get keyboard input | | INPUT | input values | | INSERT | insert data into array | | INSPECT | display information about value | | INSTR | string search | | INT | convert number to integer | | IRREAD | read data from IR camera | | IRSPRITE | display IR camera image on sprite | | IRSTART | start IR camera | | IRSTATE | get IR camera state | | IRSTOP | stop IR camera | | KEY | set function key | | KEYBOARD | get raw keypresses | | LAST | last index in string/array (LEN(x)-1) | | LAYER | set layer mode | | LCLIP | set layer clipping region | | LEFT$ | get characters from start of string | | LEN | get length of string/array | | LFILTER | set layer filter | | LINPUT | string input | | LMATRIX | set layer transform matrix | | LOAD | load program file into slot | | LOADG | load image onto graphics page | | LOADV | load string/array | | LOCATE | set text cursor position | | LOG | calculate logarithm | | LOOP | start of infinite loop | | MAINCNT | get frame count | | MAX | get maximum value in array/list | | MBUTTON | | | METAEDIT | | | METALOAD | | | METASAVE | | | MID$ | get part of string | | MILLISEC | read millisecond timer | | MIN | get minimum value in array/list | | MOUSE | get mouse data | | NEXT | end of FOR loop | | ON | jump table | | OPTION | set compiler option | | OTHERWISE | default condition in CASE/WHEN block | | OUT | function output | | PCMCONT | unpause PCM | | PCMPOS | get/set PCM playback position | | PCMSTOP | stop pcm | | PCMSTREAM | set PCM array/sample rate | | PCMVOL | set PCM volume | | PERFBEGIN | start performance timer | | PERFEND | stop performance timer | | POP | remove last item from array | | POW | exponent | | PRGDEL | delete line from slot | | PRGEDIT | choose slot/line to edit | | PRGGET$ | get line from slot | | PRGINS | insert lines in slot | | PRGNAME$ | get slot name | | PRGSEEK | | | PRGSET | set line in slot | | PRGSIZE | get slot size | | PRINT | display text | | PROJECT | get/set current project folder | | PUSH | add item to end of array/string | | PUSHKEY | add keypress to input buffer | | RAD | convert degrees to radians | | RANDOMIZE | seed randomizer | | READ | read DATA | | REM | comment | | REMOVE | remove data from array | | RENAME | rename file | | REPEAT | start of REPEAT/UNTIL loop | | RESIZE | resize array | | RESTORE | set DATA read position | | RESULT | get result of LOAD/DIALOG/etc. | | RETURN | return from function/GOSUB | | RGB | convert between color and separate RGB channels (0-255) | | RGBF | convert between color and separate RGB channels (0-1) | | RIGHT$ | get characters from end of string | | RINGCOPY | copy data to(?) ringbuffer | | RND | get random integer | | RNDF | get random number from 0-1 | | ROUND | round number to nearest | | RSORT | sort an array from largest to smallest | | SAVE | save slot | | SAVEG | save graphics | | SAVEV | save string/array | | SCROLL | shift data in text screen | | SGN | get sign of number | | SHIFT | remove item from beginning of string/array | | SIN | sine | | SINH | hyperbolic sine | | SNDMSBAL | set subprogram sound balance | | SNDMVOL | set master sound volume | | SNDSTOP | stop all sounds | | SORT | sort array from smallest to largest | | SPANIM | start sprite animation | | SPCHK | check sprite animation status | | SPCHR | set sprite to definition | | SPCLR | delete sprite | | SPCOL | set sprite collision settings | | SPCOLOR | set sprite color | | SPCOLVEC | set sprite collision vector | | SPDEF | define sprite definition | | SPFUNC | set sprite callback function | | SPHIDE | hide sprite | | SPHITINFO | get collision information | | SPHITRC | check collision between sprite and rectangle | | SPHITSP | check collision between sprites | | SPHOME | set sprite origin | | SPLAYER | set sprite layer | | SPLINK | link sprites | | SPOFS | set sprite position | | SPPAGE | set sprite graphics page | | SPROT | set sprite rotation | | SPSCALE | set sprite scale | | SPSET | create sprite | | SPSHOW | unhide sprite | | SPSTART | unpause sprite animation | | SPSTOP | pause sprite animation | | SPUNLINK | unlink sprites | | SPUSED | check if sprite exists | | SPVAR | get/set sprite variable | | SQR | square root | | STICK | get analog stick position | | STOP | stop program | | STR$ | convert number to decimal string | | SUBST$ | replace part of string | | SWAP | swap the values of 2 variables | | SYSPARAM | get system parameter | | TALK | speech synthesis | | TALKCHK | check talk status | | TALKSTOP | stop speech synthesis | | TAN | tangent | | TANH | hyperbolic tangent | | TANIM | start text screen animation | | TARRAY | get text screen data array | | TBLEND | | | TCBIKE | | | TCFISHING | | | TCHK | | | TCHOUSE | | | TCOLOR | | | TCOPY | | | TCPIANO | | | TCROBOT | | | TCVISOR | | | TFILL | fill region of text screen | | TFUNC | set text screen callback function | | THEN | if/then | | THIDE | hide text screen | | THOME | set text screen origin | | TIME$ | get current time | | TLAYER | set text screen layer | | TLOAD | load data from text screen to array | | TMREAD | decode time string | | TOFS | set text screen position | | TOUCH | read touch screen data | | TPAGE | set text screen graphics page | | TPRINT | print to text screen | | TPUT | set tile on text screen | | TROT | set text screen rotation | | TSAVE | copy data from text screen to array | | TSCALE | set text screen scale | | TSCREEN | set text screen size | | TSHOW | unhide text screen | | TSTART | unpause text screen animation | | TSTOP | pause text screen animation | | TUPDATE | update text screen after modifying TARRAY | | TVAR | get/set text screen variable | | TYPEOF | get type of value | | UIMASK | | | UIPUSHCMPL | | | UISTATE | | | UNSHIFT | insert item at start of string/array | | UNTIL | end of REPEAT loop | | VAL | convert string to number | | VAR | create variable, get variable from name | | VIBRATE | set joycon vibration settings | | VSYNC | wait for start of frame | | WAIT | delay | | WAVSET | define custom instrument from string | | WAVSETA | define custom instrument from array | | WEND | end of WHILE loop | | WHEN | condition in CASE block | | WHILE | WHILE/WEND loop | | XCTRLSTYLE | | | XSCREEN | set screen resolution | | XSUBSCREEN | |