updated database with new functions

This commit is contained in:
n00b
2024-09-07 21:51:32 -04:00
parent 2ce04bbeca
commit 6836a07f2f
44 changed files with 970 additions and 523 deletions

221
rc_gfx3D.h Normal file
View File

@@ -0,0 +1,221 @@
int rc_loadMesh(std::string mesh_file)
int rc_loadMeshFromArchive(std::string archive, std::string mesh_file)
void rc_deleteMesh(int mesh_id)
int rc_createMesh()
bool rc_addMeshBuffer(int mesh_id, int vertex_count, double* vertex_data, double* normal_data, double* uv_data, int index_count, double* index_data)
int rc_createMeshActor(int mesh_id)
int rc_createMeshOctreeActor(int mesh_id)
int rc_createCubeActor(double cube_size)
int rc_createSphereActor(double radius)
void rc_deleteActor(int actor_id)
void rc_setGravity3D(double x, double y, double z)
void rc_setActorCollisionShape(int actor_id, int shape_type, double mass)
int rc_getActorCollisionShape(int actor)
void rc_setActorSolid(int actor_id, bool flag)
bool rc_actorIsSolid(int actor_id)
bool rc_getActorCollision(int actor1, int actor2)
//void rc_setActorTexture(int actor, int layer, int image_id)
//void rc_setActorTextureEx(int actor, int material, int layer, int resource_type, int resource_id)
//Uint32 rc_getActorMaterialCount(int actor)
//void rc_setActorMaterialFlag(int actor, int flag, bool flag_value)
//void rc_setActorMaterialFlagEx(int actor, int material, int flag, bool flag_value)
//bool rc_getActorMaterialFlag(int actor, int material, int flag)
//void rc_setActorMaterialType(int actor, int material_type)
//void rc_setActorMaterialTypeEx(int actor, int material, int material_type)
//int rc_getActorMaterialType(int actor, int material)
//void rc_setActorMaterial(int actor, int material_num, int material_id)
//int rc_getActorMaterial(int actor, int material_num)
//int rc_getActorTexture(int actor, int material, int layer)
void rc_setActorPosition(int actor, double x, double y, double z)
void rc_translateActor(int actor, double x, double y, double z)
void rc_translateActorWorld(int actor, double x, double y, double z)
void rc_getActorPosition(int actor, double* x, double* y, double* z)
void rc_setActorScale(int actor, double x, double y, double z)
void rc_scaleActor(int actor, double x, double y, double z)
void rc_getActorScale(int actor, double* x, double* y, double* z)
void rc_setActorRotation(int actor, double x, double y, double z)
void rc_rotateActor(int actor, double x, double y, double z)
void rc_getActorRotation(int actor, double* x, double* y, double* z)
void rc_setActorGravity(int actor, double x, double y, double z)
void rc_getActorGravity(int actor, double* x, double* y, double* z)
void rc_setActorDamping(int actor, double lin_damping, double ang_damping)
double rc_getActorLinearDamping(int actor)
double rc_getActorAngularDamping(int actor)
double rc_getActorLinearSleepThreshold(int actor)
double rc_getActorAngularSleepThreshold(int actor)
void rc_applyActorDamping(int actor, double timeStep)
void rc_setActorMassProperties(int actor, double mass, double inertia_x, double inertia_y, double inertia_z)
void rc_getActorLinearFactor(int actor, double* x, double* y, double* z)
void rc_setActorLinearFactor(int actor, double x, double y, double z)
double rc_getActorInverseMass(int actor)
void rc_integrateActorVelocities(int actor, double step)
void rc_applyActorCentralForceLocal(int actor, double x, double y, double z)
void rc_applyActorCentralForceWorld(int actor, double x, double y, double z)
void rc_getActorTotalForce(int actor, double* x, double* y, double* z)
void rc_getActorTotalTorque(int actor, double* x, double* y, double* z)
void rc_getActorInverseInertiaDiagLocal(int actor, double* x, double* y, double* z)
void rc_setActorInverseInertiaDiagLocal(int actor, double x, double y, double z)
void rc_setActorSleepThresholds(int actor, double linear, double angular)
void rc_applyActorTorqueLocal(int actor, double x, double y, double z)
void rc_applyActorTorqueWorld(int actor, double x, double y, double z)
void rc_applyActorForceLocal(int actor, double x, double y, double z, double rel_x, double rel_y, double rel_z)
void rc_applyActorForceWorld(int actor, double x, double y, double z, double rel_x, double rel_y, double rel_z)
void rc_applyActorCentralImpulseLocal(int actor, double x, double y, double z)
void rc_applyActorCentralImpulseWorld(int actor, double x, double y, double z)
void rc_applyActorTorqueImpulseLocal(int actor, double x, double y, double z)
void rc_applyActorTorqueImpulseWorld(int actor, double x, double y, double z)
void rc_applyActorImpulseLocal(int actor, double x, double y, double z, double rel_x, double rel_y, double rel_z)
void rc_applyActorImpulseWorld(int actor, double x, double y, double z, double rel_x, double rel_y, double rel_z)
void rc_clearActorForces(int actor)
void rc_updateActorInertiaTensor(int actor)
void rc_getActorCOMPosition(int actor, double* x, double* y, double* z)
void rc_getActorRotationQ(int actor, double* x, double* y, double* z, double* w)
void rc_getActorLinearVelocity(int actor, double* x, double* y, double* z)
void rc_getActorAngularVelocity(int actor, double* x, double* y, double* z)
void rc_setActorLinearVelocityLocal(int actor, double x, double y, double z)
void rc_setActorLinearVelocityWorld(int actor, double x, double y, double z)
void rc_setActorAngularVelocityLocal(int actor, double x, double y, double z)
void rc_setActorAngularVelocityWorld(int actor, double x, double y, double z)
void rc_getActorLocalPointVelocity(int actor, double rel_x, double rel_y, double rel_z, double* x, double* y, double* z)
void rc_getActorLinearVelocityLocal(int actor, double* x, double* y, double* z)
void rc_getActorAngularVelocityLocal(int actor, double* x, double* y, double* z)
void rc_getActorAABB(int actor, double* min_x, double* min_y, double* min_z, double* max_x, double* max_y, double* max_z)
double rc_computeActorImpulseDenominator(int actor, double pos_x, double pos_y, double pos_z, double normal_x, double normal_y, double normal_z)
double rc_computeActorAngularImpulseDenominator(int actor, double x, double y, double z)
void rc_setActorAngularFactor(int actor, double x, double y, double z)
void rc_getActorAngularFactor(int actor, double* x, double* y, double* z)
void rc_computeActorGyroImpulseLocal(int actor, double step, double* x, double* y, double* z)
void rc_computeActorGyroImpulseWorld(int actor, double dt, double* x, double* y, double* z)
void rc_getActorLocalInertia(int actor, double* x, double* y, double* z)
int rc_createPointConstraint(int actorA, double pxA, double pyA, double pzA)
int rc_createPointConstraintEx(int actorA, int actorB, double pxA, double pyA, double pzA, double pxB, double pyB, double pzB)
void rc_setConstraintPivotA(int constraint_id, double x, double y, double z)
void rc_setConstraintPivotB(int constraint_id, double x, double y, double z)
int rc_createHingeConstraint(int actorA, double pxA, double pyA, double pzA, double axA, double ayA, double azA)
int rc_createHingeConstraintEx(int actorA, int actorB, double pxA, double pyA, double pzA, double pxB, double pyB, double pzB, double axA, double ayA, double azA, double axB, double ayB, double azB)
int rc_createSlideConstraint(int actorA, int frameInB_matrix, bool useLinearReferenceFrameA)
int rc_createSlideConstraintEx(int actorA, int actorB, int frameInA_matrix, int frameInB_matrix, bool useLinearReferenceFrameA)
int rc_createConeConstraint(int actorA, int rbAFrame_matrix)
int rc_createConeConstraintEx(int actorA, int actorB, int rbAFrame_matrix, int rbBFrame_matrix)
void rc_deleteConstraint(int constraint_id)
void rc_getConstraintFrameOffsetA(int constraint_id, double* x, double* y, double* z, double* rx, double* ry, double* rz)
void rc_getConstraintFrameOffsetB(int constraint_id, double* x, double* y, double* z, double* rx, double* ry, double* rz)
void rc_useConstraintFrameOffset(int constraint_id, bool flag)
double rc_getHingeAngle(int constraint_id)
double rc_getHingeAngleEx(int constraint_id, int t_matrixA, int t_matrixB)
double rc_getConstraintBreakingImpulseThreshold(int constraint_id)
int rc_getConstraintAFrame(int constraint_id, int mA)
int rc_getConstraintBFrame(int constraint_id, int mA)
void rc_setConstraintAxis(int constraint_id, double x, double y, double z)
void rc_setConstraintBreakingImpulseThreshold(int constraint_id, double threshold)
void rc_setConstraintFrames(int constraint_id, int frameA_matrix, int frameB_matrix)
void rc_setHingeLimit(int constraint_id, double low, double high, double softness, double bias_factor, double relaxation_factor)
void rc_setConeLimit(int constraint_id, double swingSpan1, double swingSpan2, double twistSpan, double softness, double bias_factor, double relaxation_factor)
double rc_getConstraintLimitBiasFactor(int constraint_id)
double rc_getLimitRelaxationFactor(int constraint_id)
double rc_getConstraintLimitSign(int constraint_id)
int rc_getHingeSolveLimit(int constraint_id)
void rc_useHingeReferenceFrameA(int constraint_id, bool flag)
double rc_getConstraintAppliedImpulse(int constraint_id)
int rc_getConstraintFixedActor(int constraint_id)
void rc_getConstraintPivotA(int constraint_id, double* x, double* y, double* z)
void rc_getConstraintPivotB(int constraint_id, double* x, double* y, double* z)
int rc_getConstraintActorA(int constraint_id)
int rc_getConstraintActorB(int constraint_id)
void rc_setConstraintSolverIterations(int constraint_id, int num)
double rc_getConstraintBiasFactor(int constraint_id)
double rc_getConstraintDamping(int constraint_id)
double rc_getConstraintFixThresh(int constraint_id)
double rc_getConstraintLimit(int constraint_id, int limit_index)
double rc_getConstraintLimitSoftness(int constraint_id)
double rc_getConstraintSolverIterations(int constraint_id)
void rc_getConstraintAnglePoint(int constraint_id, double angle, double len, double* x, double* y, double* z)
bool rc_getConstraintAngularOnly(int constraint_id)
int rc_getConstraintSolveSwingLimit(int constraint_id)
int rc_getConstraintSolveTwistLimit(int constraint_id)
int rc_getConstraintSolveLimit(int constraint_id)
double rc_getConstraintSwingSpan1(int constraint_id)
int rc_getConstraintSwingSpan2(int constraint_id)
double rc_getConstraintTwistAngle(int constraint_id)
double rc_getConstraintTwistLimitSign(int constraint_id)
int rc_getConstraintTwistSpan(int constraint_id)
void rc_setConstraintAngularOnly(int constraint_id, bool flag)
void rc_setConstraintDamping(int constraint_id, double damping)
void rc_setConstraintFixThresh(int constraint_id, double fixThresh)
void rc_getConstraintAnchorA(int constraint_id, double* x, double* y, double* z)
void rc_getConstraintAnchorB(int constraint_id, double* x, double* y, double* z)
double rc_getConstraintAngDepth(int constraint_id)
double rc_getConstraintAngularPos(int constraint_id)
double rc_getConstraintDampingDirAng(int constraint_id)
double rc_getConstraintDampingDirLin(int constraint_id)
double rc_getConstraintDampingLimAng(int constraint_id)
double rc_getConstraintDampingLimLin(int constraint_id)
double rc_getConstraintDampingOrthoAng(int constraint_id)
double rc_getConstraintDampingOrthoLin(int constraint_id)
double rc_getConstraintLinearPos(int constraint_id)
double rc_getConstraintLinDepth(int constraint_id)
double rc_getConstraintLowerAngLimit(int constraint_id)
double rc_getConstraintLowerLinLimit(int constraint_id)
double rc_getConstraintRestitutionDirAng(int constraint_id)
double rc_getConstraintRestitutionDirLin(int constraint_id)
double rc_getConstraintRestitutionLimAng(int constraint_id)
double rc_getConstraintRestitutionLimLin(int constraint_id)
double rc_getConstraintRestitutionOrthoAng(int constraint_id)
double rc_getConstraintRestitutionOrthoLin(int constraint_id)
double rc_getConstraintSoftnessDirAng(int constraint_id)
double rc_getConstraintSoftnessDirLin(int constraint_id)
double rc_getConstraintSoftnessLimAng(int constraint_id)
double rc_getConstraintSoftnessLimLin(int constraint_id)
double rc_getConstraintSoftnessOrthoAng(int constraint_id)
double rc_getConstraintSoftnessOrthoLin(int constraint_id)
bool rc_getConstraintSolveAngLimit(int constraint_id)
bool rc_getConstraintSolveLinLimit(int constraint_id)
double rc_getConstraintUpperAngLimit(int constraint_id)
double rc_getConstraintUpperLinLimit(int constraint_id)
bool rc_getConstraintUseFrameOffset(int constraint_id)
void rc_setConstraintDampingDirAng(int constraint_id, double n)
void rc_setConstraintDampingDirLin(int constraint_id, double n)
void rc_setConstraintDampingLimAng(int constraint_id, double n)
void rc_setConstraintDampingLimLin(int constraint_id, double n)
void rc_setConstraintDampingOrthoAng(int constraint_id, double n)
void rc_setConstraintDampingOrthoLin(int constraint_id, double n)
void rc_setConstraintLowerAngLimit(int constraint_id, double n)
void rc_setConstraintLowerLinLimit(int constraint_id, double n)
void rc_setConstraintRestitutionDirAng(int constraint_id, double n)
void rc_setConstraintRestitutionDirLin(int constraint_id, double n)
void rc_setConstraintRestitutionLimAng(int constraint_id, double n)
void rc_setConstraintRestitutionLimLin(int constraint_id, double n)
void rc_setConstraintRestitutionOrthoAng(int constraint_id, double n)
void rc_setConstraintRestitutionOrthoLin(int constraint_id, double n)
void rc_setConstraintSoftnessDirAng(int constraint_id, double n)
void rc_setConstraintSoftnessDirLin(int constraint_id, double n)
void rc_setConstraintSoftnessLimAng(int constraint_id, double n)
void rc_setConstraintSoftnessLimLin(int constraint_id, double n)
void rc_setConstraintSoftnessOrthoAng(int constraint_id, double n)
void rc_setConstraintSoftnessOrthoLin(int constraint_id, double n)
void rc_setConstraintUpperAngLimit(int constraint_id, double n)
void rc_setConstraintUpperLinLimit(int constraint_id, double n)
void rc_setWorld3DDeltaTime(double dt)
void rc_setWorld3DMaxSubSteps(double steps)
void rc_setWorld3DTimeStep(double ts)
void rc_setActorAnimation(int actor, int start_frame, int end_frame)
void rc_setActorAnimationSpeed(int actor, double speed)
void rc_setCameraPosition(double x, double y, double z)
void rc_getCameraPosition(double* x, double* y, double* z)
void rc_translateCamera(double x, double y, double z)
void rc_translateCameraW(double x, double y, double z)
void rc_setCameraRotation(double x, double y, double z)
void rc_getCameraRotation(double* x, double* y, double* z)
void rc_rotateCamera(double x, double y, double z)

View File

@@ -0,0 +1 @@
,n00b,fedora,07.09.2024 21:47,file:///home/n00b/.config/libreoffice/4;

556
rcbasic_build/embedded_functions.bas Executable file → Normal file
View File

@@ -1,527 +1,37 @@
'StringFill
'Stack_Size_N
'Stack_Size_S
'Text I/O
sub FPrint(txt$)
function Input$(prompt$)
'Arrays
function ArrayDim(Byref id)
function StringArrayDim(Byref id$)
function NumberArrayDim(Byref id)
function ArraySize(Byref id, array_dim)
function StringArraySize(Byref id$, array_dim)
function NumberArraySize(Byref id, array_dim)
'Math
function Abs(n)
function ACos(n)
function AndBit(a,b)
function ASin(n)
function ATan(n)
function Bin$(n)
function CInt32(i)
function CInt64(i)
function Cos(n)
function Degrees(r)
function Exp(n)
function Frac(n)
function Hex$(n)
function HexVal(n$)
function Int(n)
function Log(n)
function Max(a, b)
function Min(a, b)
function OrBit(a, b)
function Radians(d)
function Randomize(n)
function Rand(n)
function Round(n)
function Sign(n)
function Sin(n)
function Sqrt(n)
function Tan(n)
function XOrBit(a, b)
'Strings
function Asc(c$)
function Chr$(n)
function Insert$(src$, tgt$, pos)
function InStr(src$, substr$)
function LCase$(src$)
function Left$(src$, n)
function Length(src$)
function Len(src$)
function LTrim$(src$)
function Mid$(src$, start, n)
function ReplaceSubstr$(src$, rpc$, pos)
function Replace$(src$, tgt$, rpc$)
function Reverse$(src$)
function Right$(src$, n)
function RTrim$(src$)
function StringFill$(src$, n)
function Str$(n)
function Str_F$(n)
function Str_S$(n)
function Tally(src$, substr$)
function Trim$(src$)
function UCase$(src$)
function Val(n$)
'Stacks
sub Stack_N(n)
sub Stack_S(n)
sub Push_N(n)
function Pop_N()
sub Push_S(s$)
function Pop_S$()
function Stack_Size_N()
function Stack_Size_S()
'File I/O
function FileOpen(stream, fileName$, mode)
sub FileClose(stream)
function ReadByte(stream)
sub WriteByte(stream, byte)
function ReadLine$(stream)
sub Write(stream, txt$)
sub WriteLine(stream, txt$)
sub CopyFile(src$, dst$)
function RemoveFile(fileName$)
function FileExists(fileName$)
function MoveFile(src$, dst$)
function RenameFile(src$, dst$)
function FileLength(fileName$)
function Tell(stream)
function Seek(stream, pos)
function EOF(stream)
function FreeFile()
'Directories
sub ChangeDir(p$)
function DirExists(p$)
function DirFirst$()
function Dir$()
function DirNext$()
function MakeDir(p$)
function RemoveDir(p$)
'Date and Time
function Date$()
function Easter$(year)
function Ticks()
function Time$()
function Timer()
sub Wait(m_sec)
'Window Management
sub WindowOpen(win, title$, x, y, w, h, flag, vsync)
sub WindowClose(win)
sub RaiseWindow(win)
sub Window(win)
sub Update()
sub Cls()
sub SetClearColor(c)
sub ShowWindow(win)
sub HideWindow(win)
sub SetWindowTitle(win, title$)
function WindowTitle$(win)
sub SetWindowPosition(win, x, y)
sub GetWindowPosition(win, byref x, byref y)
sub SetWindowSize(win, w, h)
sub GetWindowSize(win, byref w, byref h)
sub SetWindowMinSize(win, w, h)
sub GetWindowMinSize(win, byref w, byref h)
sub SetWindowMaxSize(win, w, h)
sub GetWindowMaxSize(win, byref w, byref h)
function WindowIsFullscreen(win)
function WindowIsVisible(win)
function WindowIsBordered(win)
function WindowIsResizable(win)
function WindowIsMinimized(win)
function WindowIsMaximized(win)
function WindowHasInputFocus(win)
function WindowHasMouseFocus(win)
sub SetWindowFullscreen(win, flag)
sub MaximizeWindow(win)
sub MinimizeWindow(win)
sub SetWindowBorder(win, flag)
sub WindowClip(slot, x, y, w, h)
function WindowExists(win)
function NumWindows()
function WindowEvent_Close(win)
function WindowEvent_Maximize(win)
function WindowEvent_Minimize(win)
function ActiveWindow()
function FPS()
sub SetWindowIcon(win, slot)
'Canvases
sub CanvasOpen(c_num, w, h, viewport_x, viewport_y, viewport_w, viewport_h, mode)
sub CanvasClose(c_num)
sub SetCanvasVisible(c_num, flag)
function CanvasIsVisible(c_num)
sub SetCanvasViewport(cnum, x, y, w, h)
sub GetCanvasViewport(c_num, byref x, byref y, byref w, byref h)
sub Canvas(c_num)
sub SetCanvasOffset(c_num, x, y)
sub GetCanvasOffset(c_num, byref x, byref y)
sub GetCanvasSize(c_num, byref w, byref h)
sub ClearCanvas()
sub SetCanvasAlpha(c_num, a)
function CanvasAlpha(c_num)
function SetCanvasBlendMode(c_num, blend_mode)
function CanvasBlendMode(c_num)
function SetCanvasColorMod(c_num, c)
function CanvasColorMod(c_num)
sub CopyCanvas(src, x, y, w, h, dst, dx, dy)
sub CloneCanvas(src, dst)
sub SetCanvasZ(c_num, z)
function CanvasZ(c_num)
sub CanvasClip(slot, x, y, w, h, flag)
function ActiveCanvas()
'Graphics Primitives
sub Box(x1, y1, x2, y2)
sub BoxFill(x1, y1, x2, y2)
sub Circle(x,y,radius)
sub CircleFill(x,y,radius)
sub Ellipse(x,y,rx,ry)
sub EllipseFill(x,y,rx,ry)
sub FloodFill(x,y)
function GetPixel(x,y)
sub SetColor(c)
sub Line(x1, y1, x2, y2)
sub Poly(n, byref x, byref y)
sub PolyFill(n, byref x, byref y)
sub Rect(x, y, w, h)
sub RectFill(x, y, w, h)
sub RoundRect(x, y, w, h, r)
sub RoundRectFill(x, y, w, h, r)
function RGB(r,g,b)
function RGBA(r,g,b,a)
sub PSet(x,y)
'Images
sub LoadImage(slot, img$)
sub LoadImage_Ex(slot, img$, colkey)
sub ImageFromBuffer(slot, w, h, byref buffer)
sub ImageFromBuffer_Ex(slot, w, h, byref buffer, colkey)
sub BufferFromImage(slot, byref buffer)
function ImageExists(slot)
sub ColorKey(slot, c)
sub CopyImage(src, dst)
sub DeleteImage(slot)
sub SetImageAlpha(slot, a)
function ImageAlpha(slot)
sub GetImageSize(slot, byref w, byref h)
function SetImageBlendMode(slot, blend_mode)
function ImageBlendMode(slot)
function SetImageColorMod(slot, c)
function ImageColorMod(slot)
sub DrawImage(slot, x, y)
sub DrawImage_Blit(slot, x, y, src_x, src_y, src_w, src_h)
sub DrawImage_Blit_Ex(slot, x, y, w, h, src_x, src_y, src_w, src_h)
sub DrawImage_Rotate(slot, x, y, angle)
sub DrawImage_Rotate_Ex(slot, x, y, src_x, src_y, src_w, src_h, angle)
sub DrawImage_Zoom(slot, x, y, zx, zy)
sub DrawImage_Zoom_Ex(slot, x, y, src_x, src_y, src_w, src_h, zx, zy)
sub DrawImage_Rotozoom(slot, x, y, angle, zx, zy)
sub DrawImage_Rotozoom_Ex(slot, x, y, src_x, src_y, src_w, src_h, angle, zx, zy)
sub DrawImage_Flip(slot, x, y, h, v)
sub DrawImage_Flip_Ex(slot, x, y, src_x, src_y, src_w, src_h, h, v)
'Keyboard and Mouse
function InKey()
function Key(key_code)
function WaitKey()
sub HideMouse()
sub ShowMouse()
function MouseIsVisible()
sub GetMouse(byref x, byref y, byref mb1, byref mb2, byref mb3)
function MouseX()
function MouseY()
function MouseButton(mb)
sub GetMouseWheel(byref x_axis, byref y_axis)
function MouseWheelX()
function MouseWheelY()
'Sound and Music
sub SoundFromBuffer(slot, byref buffer, buffer_size, vol)
sub LoadSound(slot, snd_file$)
sub LoadMusic(music_file$)
sub PlaySound(slot, channel, loops)
sub PlaySoundTimed(slot, channel, loops, ms)
sub PlayMusic(mLoops)
sub PauseSound(channel)
sub ResumeSound(channel)
sub PauseMusic()
sub ResumeMusic()
sub DeleteSound(slot)
sub DeleteMusic()
sub FadeMusicIn(fade_time, loops)
sub FadeMusicOut(fade_time)
function MusicExists()
sub SetMusicVolume(vol)
function MusicVolume()
sub SetMusicPosition(pos)
function MusicPosition()
sub RewindMusic()
sub SetSoundChannels(max_channels)
function NumSoundChannels()
function SoundIsEnabled()
function SoundExists(slot)
sub SetChannelVolume(channel, vol)
function ChannelVolume(channel)
sub SetSoundVolume(slot, vol)
function SoundVolume(slot)
sub StopMusic()
sub StopSound(channel)
function SetChannelPanning(channel, left_value, right_value)
function SetChannelDistance(channel, dist_value)
function ChannelIsPlaying(channel)
function ChannelIsPaused(channel)
'Joysticks
function NumJoysticks()
function NumJoyAxes(joy_num)
function NumJoyButtons(joy_num)
function NumJoyHats(joy_num)
function NumJoyTrackBalls(joy_num)
function JoyAxis(joy_num, joy_axis)
function JoyButton(joy_num, joy_button)
function JoyHat(joy_num, joy_hat)
sub GetJoyTrackBall(joy_num, ball, byref dx, byref dy)
function JoyName$(joy_num)
function JoystickIsConnected(joy_num)
'Screen Console
sub GetCursor(byref x, byref y)
sub PrintS(txt$)
function InputS$(prompt$)
function ZoneInputS$(x, y, w, h)
sub Locate(x, y)
'Text Editing
sub ReadInput_Start()
sub ReadInput_Stop()
function ReadInput_Text$()
sub ReadInput_SetText(txt$)
sub ReadInput_ToggleBackspace(flag)
'Text Drawing
sub LoadFont(slot, fnt_file$, size)
sub DeleteFont(slot)
function FontIsLoaded(slot)
sub Font(slot)
sub SetFontStyle(slot, style)
sub DrawText(txt$, x, y)
sub DrawText_Shaded(txt$, x, y, fg_color, bg_color)
sub DrawText_Blended(txt$, x, y)
sub RenderText(slot, txt$)
sub GetTextSize(slot, txt$, byref w, byref h)
'Touch Events
function TouchPressure()
sub GetTouch(byref status, byref x, byref y, byref dx, byref dy)
sub GetMultiTouch(byref status, byref x, byref y, byref fingers, byref dist, byref theta)
sub GetTouchFinger(finger, byref x, byref y, byref pressure)
function NumFingers()
'Networking
function CheckSockets(timeout_ms)
function TCP_SocketReady(socket)
function UDP_SocketReady(socket)
function TCP_SocketOpen(socket, host$, port)
sub TCP_SocketClose(socket)
function TCP_RemoteHost(socket)
function TCP_RemotePort(socket)
function TCP_GetData(socket, ByRef sData$, numBytes)
sub TCP_SendData(socket, sData$)
function TCP_AcceptSocket(server, client)
function UDP_SocketOpen(socket, port)
function UDP_SocketClose(socket)
function UDP_GetData(socket, byref sData$, byref host$, byref port)
function UDP_Length()
function UDP_MaxLength()
function UDP_RemoteHost$(socket)
function UDP_RemotePort(socket)
sub UDP_SendData(socket, sData$, host$, port)
'Video Playback
sub LoadVideo(vid$)
sub PlayVideo(vLoops)
sub PauseVideo()
sub StopVideo()
sub SetVideoPosition(pos)
sub ResumeVideo()
function VideoPosition()
sub DeleteVideo()
function VideoIsPlaying()
function VideoEnd()
sub GetVideoStats(vFile$, byref vLen, byref vfps, byref frame_w, byref frame_h)
sub SetVideoDrawRect(x, y, w, h)
sub GetVideoDrawRect(byref x, byref y, byref w, byref h)
sub GetVideoSize(byref w, byref h)
function VideoExists()
sub SetVideoAlpha(a)
'Operating System
function System(cmd$)
function OS$()
function Command$(arg)
function NumCommands()
function Env$(v$)
sub SetEnv(var$, value$, overwrite)
function PrefPath$(org_name$, app_name$)
function Android_GetExternalStoragePath$()
function Android_GetExternalStorageState()
function Android_GetInternalStoragePath$()
function Android_JNI_Message$(arg$)
function Runtime_Utility_Message$(arg$)
'Clipboard
function ClipboardText$()
sub SetClipboardText(txt$)
function HasClipboardText()
'v3.12
Sub GetDesktopDisplayMode(index, ByRef w, ByRef h, ByRef freq)
Sub DrawImage_Transform(slot, x, y, w, h, src_x, src_y, src_w, src_h, angle, center_x, center_y, flip_h, flip_v)
Sub GetPowerInfo(ByRef status, ByRef secs, ByRef pct)
Function SystemRam()
Function SetRenderScaleQuality(n)
Function EvalJS$(js_code$) 'Only useable in Emscripten
Function GetRenderScaleQuality()
'v3.14
sub GetGlobalMouse(ByRef x, ByRef y, ByRef mb1, ByRef mb2, ByRef mb3)
function GlobalMouseX()
function GlobalMouseY()
sub GetAccel(accel_num, ByRef x, ByRef y, ByRef z)
function AccelName$(accel_num)
function NumAccels()
sub GetGyro(gyro_num, ByRef x, ByRef y, ByRef z)
function GyroName$(gyro_num)
function NumGyros()
sub JoyRumblePlay(joy_num, strength, duration)
sub JoyRumbleStop(joy_num)
function JoystickIsHaptic(joy_num)
function WriteByteBuffer(stream, ByRef buf, buf_size)
function ReadByteBuffer(stream, ByRef buf, buf_size)
function WindowEvent_Resize(win)
sub SetWindowAutoClose( win, exit_on_close )
sub SetWindowResizable(win, flag) 'new
function SystemReturnStdOut$(cmd$) 'new
function WindowMode(visible, fullscreen, resizable, borderless, highDPI)
function WindowFlags(win)
sub RestoreWindow(win)
sub UpdateAllWindows() 'new
function QueryAudioSpec(ByRef freq, ByRef format, ByRef channels) 'new
'v3.15
function MusicIsPlaying()
'v3.19
function DrawGeometry(slot, num_vertices, ByRef vertices, num_indices, ByRef Indices)
'v3.20
function Size(s$)
function BufferFromString(s$, ByRef buffer)
function StringFromBuffer$(ByRef buffer, buffer_size)
sub GrabInput(flag)
function GrabbedWindow()
sub WarpMouse(x, y)
sub WarpMouseGlobal(x, y)
sub SetMouseZone(x, y, w, h)
sub ClearMouseZone()
sub SetWindowAlwaysOnTop(win, flag)
sub SetMouseRelative(flag)
sub SetWindowVSync(win, flag)
function OpenURL(url$)
function APIVersion$()
function FlashWindow(win)
function MessageBox(title$, msg$)
sub NumberArrayCopy(ByRef src, ByRef dst)
sub StringArrayCopy(ByRef src$, ByRef dst$)
sub ArrayCopy(ByRef src, ByRef dst)
sub NumberArrayFill(ByRef src, fdata)
sub StringArrayFill(ByRef src$, fdata$)
sub ArrayFill(ByRef src, fdata)
function Runtime$()
'More v3.20 (Matrices and Parrallism)
sub DimMatrix(m, m_rows, m_cols, preserve_flag)
function AddMatrix(mA, mB, mC)
function AugmentMatrix (mA, mB, mC)
sub CopyMatrix(mA, mB)
function InsertMatrixColumns(mA, c, num_cols)
function InsertMatrixRows(mA, r, num_rows)
function MultiplyMatrix (mA, mB, mC)
function CubeMatrix(mA, mB)
function DeleteMatrixColumns(mA, c, num_cols)
function DeleteMatrixRows(mA, r, num_rows)
sub ClearMatrix(mA)
function ClearMatrixColumns (mA, c, num_cols)
function ClearMatrixRows(mA, r, num_rows)
sub FillMatrix(mA, v)
function FillMatrixColumns(mA, c, num_cols, v)
function FillMatrixRows(mA, r, num_rows, v)
function CopyMatrixColumns(mA, mB, c, num_cols)
function CopyMatrixRows (mA, mB, r, num_rows)
sub IdentityMatrix(mA, n)
function SolveMatrix(mA, mB, mC)
function IsEqualMatrix(mA, mB, tolerance)
function Determinant(mA)
function AdjointMatrix(mA, mB)
function InvertMatrix(mA, mB)
sub MatrixFromBuffer(mA, r, c, ByRef buffer)
sub GetMatrix(ByRef buffer, mA)
sub RandomizeMatrix(mA, vmin, vmax)
function MatrixValue(mA, r, c)
sub SetMatrixValue(mA, r, c, v)
sub ScalarMatrix (mA, mB, s_value)
function ScalarMatrixColumns(mA, mB, c, num_cols, s_value)
function ScalarMatrixRows(mA, mB, r, num_rows, s_value)
function SquareMatrix(mA, mB)
sub SubMatrix(mA, r, c)
function SubtractMatrix (mA, mB, mC)
sub SwapMatrix(mA, mB)
function SwapMatrixColumn(mA, C1, C2)
function SwapMatrixRow(mA, R1, R2)
function TransposeMatrix(mA, mB)
function UnAugmentMatrix(mA, mB, mC)
sub ZeroMatrix(mA)
sub GetMatrixSize(mA, ByRef r, ByRef c)
function SetMatrixProcess(p_num) 'Set to -1 for main thread
'ERROR_FLAG - MATRIX_ON_ERROR_STOP, MATRIX_ON_ERROR_WAIT, MATRIX_ON_ERROR_CONTINUE
function ProcessOpen(p_num) 'stops and locks mutex, and clears queue before changing mode
sub SetProcessErrorMode(p_num, error_mode)
function ProcessError(p_num)
sub ProcessWait(p_num) 'waits for all calculations to complete and lock matrix mutex
sub ProcessWaitAll() 'waits for all process to finish
sub ProcessContinue(p_num) 'unlock mutex
sub ProcessStop(p_num) 'stops after current calculation its working on and lock mutex
sub ProcessClear(p_num) 'locks mutex and clears matrix queue
function ProcessClose(p_num)
function ProcessErrorMode(p_num)
sub ProcessSleep(p_num, msec)
function ProcessExists(p_num)
sub ProcessStopAll()
sub ProcessContinueAll()
function ProcessQueueSize(p_num)
function NumCPUs()
'v3.21
sub GetProjectionGeometry(cam_dist, mA, f_vertex_count, ByRef columns, ByRef uv, graph_offset_x, graph_offset_y, v_color, ByRef vertex_count, ByRef vertex2D, ByRef index_count, ByRef index, ByRef clip_dist, ByRef min_x, ByRef min_y, ByRef max_x, ByRef max_y)
function CalculateFaceZ(cam_dist, graph_offset_x, graph_offset_y, view_w, view_h, view_depth, mA, f_vertex_count, ByRef columns, ByRef face_min_z, ByRef face_max_z, ByRef z_avg)
function SetChannelSpacePosition(channel, angle, distance)
function SaveBMP(img, file$)
function SavePNG(img, file$)
function SaveJPG(img, file$)
Function GetLineIntersection(p0_x, p0_y, p1_x, p1_y, p2_x, p2_y, p3_x, p3_y, ByRef i_x, ByRef i_y)
Function Interpolate(min_a, max_a, mid_a, min_b, max_b)
Function ATan2(y, x)
function PointInQuad(x, y, x1, y1, x2, y2, x3, y3, x4, y4)
function PointInTri(x, y, x1, y1, x2, y2, x3, y3)
Function Distance2D(x1, y1, x2, y2)
Function Distance3D(x1, y1, z1, x2, y2, z2)
function GetCircleLineIntersection(circle_x, circle_y, radius, x1, y1, x2, y2, ByRef ix1, ByRef iy1, ByRef ix2, ByRef iy2)
function GetLinePlaneIntersection(ByRef line_point, ByRef line_direction, ByRef plane_point_1, ByRef plane_point_2, ByRef plane_point_3, ByRef intersection)
sub IncrementMatrixRows(mA, mB, r, num_rows, value)
sub IncrementMatrixColumns(mA, mB, c, num_cols, value)
sub JoinMatrixRows(mA, mB, mC)
sub JoinMatrixColumns(mA, mB, mC)
'v4.0
'Empty Type is used mainly for built-in functions that need to have a user type specified to be able to compile properly
type empty
end type
function TypeArrayDim(Byref id as empty)
function TypeArraySize(Byref id as empty, array_dim)
sub TypeArrayCopy(ByRef src as empty, ByRef dst as empty)
sub TypeArrayFill(ByRef src as empty, fdata as empty)
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/conio.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/arrays.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/math.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/strings.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/stacks.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/files.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/directories.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/datetime.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/window.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/canvas.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/prim2d.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/images.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/keyboard.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/audio.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/joystick.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/gfxconsole.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/text.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/touch.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/network.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/video.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/system.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/matrix.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/process.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/clipboard.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/textedit.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/sprites.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/sprite_physics.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/tilemaps.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/mesh.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/actor.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/actor_physics.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/constraint3D.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/camera.bas"

View File

@@ -0,0 +1,76 @@
function CreateMeshActor( mesh )
function CreateMeshOctreeActor( mesh )
function CreateCubeActor( cube_size )
function CreateSphereActor( radius )
sub DeleteActor( actor )
sub GetActorTransform( actor, matrix )
function CreateTerrainActor( hmap_file$ )
sub GetTerrainPatchAABB( actor, patchX, patchZ, ByRef minX, ByRef minY, ByRef minZ, ByRef maxX, ByRef maxY, ByRef maxZ )
function GetTerrainPatchLOD( actor, patchX, patchZ )
function GetTerrainHeight( actor, patchX, patchZ )
sub GetTerrainCenter( actor, ByRef x, ByRef y, ByRef z )
sub SetTerrainLODDistance( actor, LOD, distance )
sub ScaleTerrainTexture( actor, scale, scale2 )
sub SetTerrainCameraMovementDelta( actor, delta )
sub SetTerrainCameraRotationDelta( actor, delta )
sub SetTerrainPatchLOD( actor, patchX, patchZ, LOD )
sub SetActorTexture( actor, layer, image_id )
sub SetActorTextureEx( actor, material, layer, resource_type, resource_id )
function GetActorTexture( actor, material, layer )
function GetActorMaterialCount( actor )
sub SetActorMaterialFlag( actor, flag, flag_value )
sub SetActorMaterialFlagEx( actor, material, flag, flag_value)
function GetActorMaterialFlag( actor, material, flag)
sub SetActorMaterialType( actor, material_type)
sub SetActorMaterialTypeEx( actor, material, material_type)
function GetActorMaterialType( actor, material )
sub SetActorMaterial( actor, material_num, material_id)
function GetActorMaterial( actor, material_num)
sub SetActorPosition( actor, x, y, z )
sub TranslateActor( actor, x, y, z )
sub TranslateActorWorld( actor, x, y, z )
sub GetActorPosition( actor, ByRef x, ByRef y, ByRef z )
sub SetActorScale( actor, x, y, z )
sub ScaleActor( actor, x, y, z )
sub GetActorScale( actor, ByRef x, ByRef y, ByRef z )
sub SetActorRotation( actor, x, y, z )
sub RotateActor( actor, x, y, z )
sub GetActorRotation( actor, ByRef x, ByRef y, ByRef z )
sub SetActorAnimation( actor, start_frame, end_frame)
sub SetActorAnimationSpeed( actor, speed )
sub SetActorFrame( actor, frame )
function SetActorMD2Animation( actor, anim )
function SetActorMD2AnimationByName( actor, anim_name$ )
function GetActorAnimationSpeed( actor )
function GetActorEndFrame( actor )
function GetActorCurrentFrame( actor )
function GetActorStartFrame( actor )
sub SetActorVisible( actor, flag )
function ActorIsVisible( actor )
sub SetActorAutoCulling( actor, cull_type )
function GetActorAutoCulling( actor )
function actorAnimationIsLooped( actor )
sub loopActorAnimation( actor, flag )
sub AddActorShadow( actor )
sub RemoveActorShadow( actor )
sub StartActorTransition( actor, frame, transition_time )
sub StopActorTransition( actor )
function ActorIsInTransition( actor )
function GetActorTransitionTime( actor )
sub SetActorAnimation( actor, start_frame, end_frame)
sub SetActorAnimationSpeed( actor, speed )
sub SetActorFrame( actor, frame )
sub SetActorJointMode( actor, mode )
sub SetActorLoopMode( actor, mode )
function SetActorMD2Animation( actor, anim )
function SetActorMD2AnimationByName( actor, anim_name$ )
sub SetActorMesh( actor, mesh )
sub SetActorRenderFromIdentity( actor, flag )
sub SetActorTransitionTime( actor )
function GetActorLoopMode( actor )
function GetActorAnimationSpeed( actor )
function GetActorEndFrame( actor )
function GetActorCurrentFrame( actor )
function GetActorStartFrame( actor )
sub SetActorVisible( actor, flag )
function GetActorVisible( actor )

View File

@@ -0,0 +1,58 @@
sub SetGravity3D(x, y, z)
sub GetGravity3D(ByRef x, ByRef y, ByRef z)
sub SetActorCollisionShape( actor, shape_type, mass)
function GetActorCollisionShape(actor)
sub SetActorSolid(actor, flag)
function ActorIsSolid(actor)
function GetActorCollision(actor1, actor2)
sub SetActorGravity( actor, x, y, z )
sub GetActorGravity( actor, ByRef x, ByRef y, ByRef z )
sub setActorDamping( actor, lin_damping, ang_damping)
function getActorLinearDamping( actor)
function getActorAngularDamping( actor)
function getActorLinearSleepThreshold( actor)
function getActorAngularSleepThreshold( actor)
sub applyActorDamping( actor, timeStep)
sub setActorMassProperties( actor, mass, inertia_x, inertia_y, inertia_z)
sub getActorLinearFactor( actor, ByRef x, ByRef y, ByRef z)
sub setActorLinearFactor( actor, x, y, z)
function getActorInverseMass( actor)
sub integrateActorVelocities( actor, step)
sub applyActorCentralForceLocal( actor, x, y, z)
sub applyActorCentralForceWorld( actor, x, y, z)
sub getActorTotalForce( actor, ByRef x, ByRef y, ByRef z)
sub getActorTotalTorque( actor, ByRef x, ByRef y, ByRef z)
sub getActorInverseInertiaDiagLocal( actor, ByRef x, ByRef y, ByRef z)
sub setActorInverseInertiaDiagLocal( actor, x, y, z)
sub setActorSleepThresholds( actor, linear, angular)
sub applyActorTorqueLocal( actor, x, y, z)
sub applyActorTorqueWorld( actor, x, y, z)
sub applyActorForceLocal( actor, x, y, z, rel_x, rel_y, rel_z)
sub applyActorForceWorld( actor, x, y, z, rel_x, rel_y, rel_z)
sub applyActorCentralImpulseLocal( actor, x, y, z)
sub applyActorCentralImpulseWorld( actor, x, y, z)
sub applyActorTorqueImpulseLocal( actor, x, y, z)
sub applyActorTorqueImpulseWorld( actor, x, y, z)
sub applyActorImpulseLocal( actor, x, y, z, rel_x, rel_y, rel_z)
sub applyActorImpulseWorld( actor, x, y, z, rel_x, rel_y, rel_z)
sub clearActorForces( actor)
sub updateActorInertiaTensor( actor)
sub getActorCOMPosition( actor, ByRef x, ByRef y, ByRef z)
sub getActorRotationQ( actor, ByRef x, ByRef y, ByRef z, ByRef w)
sub getActorLinearVelocity( actor, ByRef x, ByRef y, ByRef z)
sub getActorAngularVelocity( actor, ByRef x, ByRef y, ByRef z)
sub setActorLinearVelocityLocal( actor, x, y, z)
sub setActorLinearVelocityWorld( actor, x, y, z)
sub setActorAngularVelocityLocal( actor, x, y, z)
sub setActorAngularVelocityWorld( actor, x, y, z)
sub getActorLocalPointVelocity( actor, rel_x, rel_y, rel_z, ByRef x, ByRef y, ByRef z)
sub getActorLinearVelocityLocal( actor, ByRef x, ByRef y, ByRef z)
sub getActorAngularVelocityLocal( actor, ByRef x, ByRef y, ByRef z)
sub getActorAABB( actor, ByRef min_x, ByRef min_y, ByRef min_z, ByRef max_x, ByRef max_y, ByRef max_z)
function computeActorImpulseDenominator( actor, pos_x, pos_y, pos_z, normal_x, normal_y, normal_z)
function computeActorAngularImpulseDenominator( actor, x, y, z)
sub setActorAngularFactor( actor, x, y, z)
sub getActorAngularFactor( actor, ByRef x, ByRef y, ByRef z)
sub computeActorGyroImpulseLocal( actor, step, ByRef x, ByRef y, ByRef z)
sub computeActorGyroImpulseWorld( actor, dt, ByRef x, ByRef y, ByRef z)
sub getActorLocalInertia( actor, ByRef x, ByRef y, ByRef z)

View File

@@ -0,0 +1,16 @@
function ArrayDim(Byref id)
function StringArrayDim(Byref id$)
function NumberArrayDim(Byref id)
function ArraySize(Byref id, array_dim)
function StringArraySize(Byref id$, array_dim)
function NumberArraySize(Byref id, array_dim)
sub NumberArrayCopy(ByRef src, ByRef dst)
sub StringArrayCopy(ByRef src$, ByRef dst$)
sub ArrayCopy(ByRef src, ByRef dst)
sub NumberArrayFill(ByRef src, fdata)
sub StringArrayFill(ByRef src$, fdata$)
sub ArrayFill(ByRef src, fdata)
function TypeArrayDim(Byref id as empty)
function TypeArraySize(Byref id as empty, array_dim)
sub TypeArrayCopy(ByRef src as empty, ByRef dst as empty)
sub TypeArrayFill(ByRef src as empty, fdata as empty)

View File

@@ -0,0 +1,37 @@
function SoundFromBuffer(byref buffer, buffer_size, vol)
function LoadSound(snd_file$)
sub LoadMusic(music_file$)
sub PlaySound(slot, channel, loops)
sub PlaySoundTimed(slot, channel, loops, ms)
sub PlayMusic(mLoops)
sub PauseSound(channel)
sub ResumeSound(channel)
sub PauseMusic()
sub ResumeMusic()
sub DeleteSound(slot)
sub DeleteMusic()
sub FadeMusicIn(fade_time, loops)
sub FadeMusicOut(fade_time)
function MusicExists()
sub SetMusicVolume(vol)
function MusicVolume()
sub SetMusicPosition(pos)
function MusicPosition()
sub RewindMusic()
sub SetSoundChannels(max_channels)
function NumSoundChannels()
function SoundIsEnabled()
function SoundExists(slot)
sub SetChannelVolume(channel, vol)
function ChannelVolume(channel)
sub SetSoundVolume(slot, vol)
function SoundVolume(slot)
sub StopMusic()
sub StopSound(channel)
function SetChannelPanning(channel, left_value, right_value)
function SetChannelDistance(channel, dist_value)
function ChannelIsPlaying(channel)
function ChannelIsPaused(channel)
function QueryAudioSpec(ByRef freq, ByRef format, ByRef channels)
function MusicIsPlaying()
function SetChannelSpacePosition(channel, angle, distance)

View File

@@ -0,0 +1,6 @@
sub SetCameraPosition( x, y, z)
sub GetCameraPosition(ByRef x, ByRef y, ByRef z)
sub TranslateCamera( x, y, z)
sub SetCameraRotation( x, y, z)
sub GetCameraRotation(ByRef x, ByRef y, ByRef z)
sub RotateCamera( x, y, z)

View File

@@ -0,0 +1,22 @@
function OpenCanvas( w, h, viewport_x, viewport_y, viewport_w, viewport_h, mode)
Sub CloseCanvas(c_num)
Sub SetCanvas3D(c_num, flag)
sub SetCanvasVisible(c_num, flag)
function CanvasIsVisible(c_num)
sub SetCanvasViewport(cnum, x, y, w, h)
sub GetCanvasViewport(c_num, byref x, byref y, byref w, byref h)
sub Canvas(c_num)
sub SetCanvasOffset(c_num, x, y)
sub GetCanvasOffset(c_num, byref x, byref y)
sub GetCanvasSize(c_num, byref w, byref h)
sub ClearCanvas()
sub SetCanvasAlpha(c_num, a)
function CanvasAlpha(c_num)
function SetCanvasColorMod(c_num, c)
function CanvasColorMod(c_num)
sub CopyCanvas(src, x, y, w, h, dst, dx, dy)
sub CloneCanvas(src, dst)
sub SetCanvasZ(c_num, z)
function CanvasZ(c_num)
function CanvasClip(x, y, w, h)
function ActiveCanvas()

View File

@@ -0,0 +1,3 @@
function ClipboardText$()
sub SetClipboardText(txt$)
function HasClipboardText()

View File

@@ -0,0 +1,2 @@
sub FPrint(txt$)
function Input$(prompt$)

View File

@@ -0,0 +1,108 @@
function createPointConstraint( actorA, pxA, pyA, pzA)
function createPointConstraintEx( actorA, actorB, pxA, pyA, pzA, pxB, pyB, pzB)
sub setConstraintPivotA( constraint_id, x, y, z)
sub setConstraintPivotB( constraint_id, x, y, z)
function createHingeConstraint( actorA, pxA, pyA, pzA, axA, ayA, azA)
function createHingeConstraintEx( actorA, actorB, pxA, pyA, pzA, pxB, pyB, pzB,
function createSlideConstraint( actorA, frameInB_matrix, useLinearReferenceFrameA)
function createSlideConstraintEx( actorA, actorB, frameInA_matrix, frameInB_matrix, useLinearReferenceFrameA)
function createConeConstraint( actorA, rbAFrame_matrix)
function createConeConstraintEx( actorA, actorB, rbAFrame_matrix, rbBFrame_matrix)
sub deleteConstraint( constraint_id)
sub getConstraintFrameOffsetA( constraint_id, ByRef x, ByRef y, ByRef z, ByRef rx, ByRef ry, ByRef rz)
sub getConstraintFrameOffsetB( constraint_id, ByRef x, ByRef y, ByRef z, ByRef rx, ByRef ry, ByRef rz)
sub useConstraintFrameOffset( constraint_id, flag)
function getHingeAngle( constraint_id)
function getHingeAngleEx( constraint_id, t_matrixA, t_matrixB)
function getConstraintBreakingImpulseThreshold( constraint_id)
function getConstraintAFrame( constraint_id, mA)
function getConstraintBFrame( constraint_id, mA)
sub setConstraintAxis( constraint_id, x, y, z)
sub setConstraintBreakingImpulseThreshold( constraint_id, threshold)
sub setConstraintFrames( constraint_id, frameA_matrix, frameB_matrix)
sub setHingeLimit( constraint_id, low, high, softness, bias_factor, relaxation_factor)
sub setConeLimit( constraint_id, swingSpan1, swingSpan2, twistSpan, softness, bias_factor, relaxation_factor)
function getConstraintLimitBiasFactor( constraint_id)
function getLimitRelaxationFactor( constraint_id)
function getConstraintLimitSign( constraint_id)
function getHingeSolveLimit( constraint_id)
sub useHingeReferenceFrameA( constraint_id, flag)
function getConstraintAppliedImpulse( constraint_id)
function getConstraintFixedActor( constraint_id)
sub getConstraintPivotA( constraint_id, ByRef x, ByRef y, ByRef z)
sub getConstraintPivotB( constraint_id, ByRef x, ByRef y, ByRef z)
function getConstraintActorA( constraint_id)
function getConstraintActorB( constraint_id)
sub setConstraintSolverIterations( constraint_id, num)
function getConstraintBiasFactor( constraint_id)
function getConstraintDamping( constraint_id)
function getConstraintFixThresh( constraint_id)
function getConstraintLimit( constraint_id, limit_index)
function getConstraintLimitSoftness( constraint_id)
function getConstraintSolverIterations( constraint_id)
sub getConstraintAnglePoint( constraint_id, angle, len, ByRef x, ByRef y, ByRef z)
function getConstraintAngularOnly( constraint_id)
function getConstraintSolveSwingLimit( constraint_id)
function getConstraintSolveTwistLimit( constraint_id)
function getConstraintSolveLimit( constraint_id)
function getConstraintSwingSpan1( constraint_id)
function getConstraintSwingSpan2( constraint_id)
function getConstraintTwistAngle( constraint_id)
function getConstraintTwistLimitSign( constraint_id)
function getConstraintTwistSpan( constraint_id)
sub setConstraintAngularOnly( constraint_id, flag)
sub setConstraintDamping( constraint_id, damping)
sub setConstraintFixThresh( constraint_id, fixThresh)
sub getConstraintAnchorA( constraint_id, ByRef x, ByRef y, ByRef z)
sub getConstraintAnchorB( constraint_id, ByRef x, ByRef y, ByRef z)
function getConstraintAngDepth( constraint_id)
function getConstraintAngularPos( constraint_id)
function getConstraintDampingDirAng( constraint_id)
function getConstraintDampingDirLin( constraint_id)
function getConstraintDampingLimAng( constraint_id)
function getConstraintDampingLimLin( constraint_id)
function getConstraintDampingOrthoAng( constraint_id)
function getConstraintDampingOrthoLin( constraint_id)
function getConstraintLinearPos( constraint_id)
function getConstraintLinDepth( constraint_id)
function getConstraintLowerAngLimit( constraint_id)
function getConstraintLowerLinLimit( constraint_id)
function getConstraintRestitutionDirAng( constraint_id)
function getConstraintRestitutionDirLin( constraint_id)
function getConstraintRestitutionLimAng( constraint_id)
function getConstraintRestitutionLimLin( constraint_id)
function getConstraintRestitutionOrthoAng( constraint_id)
function getConstraintRestitutionOrthoLin( constraint_id)
function getConstraintSoftnessDirAng( constraint_id)
function getConstraintSoftnessDirLin( constraint_id)
function getConstraintSoftnessLimAng( constraint_id)
function getConstraintSoftnessLimLin( constraint_id)
function getConstraintSoftnessOrthoAng( constraint_id)
function getConstraintSoftnessOrthoLin( constraint_id)
function getConstraintSolveAngLimit( constraint_id)
function getConstraintSolveLinLimit( constraint_id)
function getConstraintUpperAngLimit( constraint_id)
function getConstraintUpperLinLimit( constraint_id)
function getConstraintUseFrameOffset( constraint_id)
sub setConstraintDampingDirAng( constraint_id, n)
sub setConstraintDampingDirLin( constraint_id, n)
sub setConstraintDampingLimAng( constraint_id, n)
sub setConstraintDampingLimLin( constraint_id, n)
sub setConstraintDampingOrthoAng( constraint_id, n)
sub setConstraintDampingOrthoLin( constraint_id, n)
sub setConstraintLowerAngLimit( constraint_id, n)
sub setConstraintLowerLinLimit( constraint_id, n)
sub setConstraintRestitutionDirAng( constraint_id, n)
sub setConstraintRestitutionDirLin( constraint_id, n)
sub setConstraintRestitutionLimAng( constraint_id, n)
sub setConstraintRestitutionLimLin( constraint_id, n)
sub setConstraintRestitutionOrthoAng( constraint_id, n)
sub setConstraintRestitutionOrthoLin( constraint_id, n)
sub setConstraintSoftnessDirAng( constraint_id, n)
sub setConstraintSoftnessDirLin( constraint_id, n)
sub setConstraintSoftnessLimAng( constraint_id, n)
sub setConstraintSoftnessLimLin( constraint_id, n)
sub setConstraintSoftnessOrthoAng( constraint_id, n)
sub setConstraintSoftnessOrthoLin( constraint_id, n)
sub setConstraintUpperAngLimit( constraint_id, n)
sub setConstraintUpperLinLimit( constraint_id, n)

View File

@@ -0,0 +1,6 @@
function Date$()
function Easter$(year)
function Ticks()
function Time$()
function Timer()
sub Wait(m_sec)

View File

@@ -0,0 +1,7 @@
sub ChangeDir(p$)
function DirExists(p$)
function DirFirst$()
function Dir$()
function DirNext$()
function MakeDir(p$)
function RemoveDir(p$)

View File

@@ -0,0 +1,18 @@
function OpenFile(fileName$, mode)
sub CloseFile( stream )
function ReadByte(stream)
sub WriteByte(stream, byte)
function ReadLine$(stream)
sub Write(stream, txt$)
sub WriteLine(stream, txt$)
sub CopyFile(src$, dst$)
function RemoveFile(fileName$)
function FileExists(fileName$)
function MoveFile(src$, dst$)
function RenameFile(src$, dst$)
function FileLength(fileName$)
function Tell(stream)
function Seek(stream, pos)
function EOF(stream)
function WriteByteBuffer(stream, ByRef buf, buf_size)
function ReadByteBuffer(stream, ByRef buf, buf_size)

View File

View File

@@ -0,0 +1,33 @@
function LoadImage( img$ )
sub LoadImage_Ex(slot, img$, colkey)
function createImage(w, h, byref buffer)
function createImageEx(w, h, byref buffer, color)
sub getImageBuffer(img_id, byref buffer)
function ImageExists(slot)
sub ColorKey(slot, c)
sub setBilinearFilter( flag )
function getBilinearFilter()
function CopyImage( img_id )
sub DeleteImage(slot)
sub SetImageAlpha(slot, a)
function getImageAlpha( img_id )
sub GetImageSize(slot, byref w, byref h)
sub SetBlendMode( blend_mode )
function getBlendMode( blend_mode )
function SetImageColorMod(slot, c)
function ImageColorMod(slot)
sub DrawImage(slot, x, y)
sub DrawImage_Blit(slot, x, y, src_x, src_y, src_w, src_h)
sub DrawImage_Blit_Ex(slot, x, y, w, h, src_x, src_y, src_w, src_h)
sub DrawImage_Rotate(slot, x, y, angle)
sub DrawImage_Rotate_Ex(slot, x, y, src_x, src_y, src_w, src_h, angle)
sub DrawImage_Zoom(slot, x, y, zx, zy)
sub DrawImage_Zoom_Ex(slot, x, y, src_x, src_y, src_w, src_h, zx, zy)
sub DrawImage_Rotozoom(slot, x, y, angle, zx, zy)
sub DrawImage_Rotozoom_Ex(slot, x, y, src_x, src_y, src_w, src_h, angle, zx, zy)
sub DrawImage_Flip(slot, x, y, h, v)
sub DrawImage_Flip_Ex(slot, x, y, src_x, src_y, src_w, src_h, h, v)
function DrawGeometry(slot, num_vertices, ByRef vertices, num_indices, ByRef Indices)
function SaveBMP(img, file$)
function SavePNG(img, file$)
function SaveJPG(img, file$)

View File

@@ -0,0 +1,14 @@
function NumJoysticks()
function NumJoyAxes(joy_num)
function NumJoyButtons(joy_num)
function NumJoyHats(joy_num)
function NumJoyTrackBalls(joy_num)
function JoyAxis(joy_num, joy_axis)
function JoyButton(joy_num, joy_button)
function JoyHat(joy_num, joy_hat)
sub GetJoyTrackBall(joy_num, ball, byref dx, byref dy)
function JoyName$(joy_num)
function JoystickIsConnected(joy_num)
sub JoyRumblePlay(joy_num, strength, duration)
sub JoyRumbleStop(joy_num)
function JoystickIsHaptic(joy_num)

View File

@@ -0,0 +1,20 @@
function InKey()
function Key(key_code)
function WaitKey()
sub HideMouse()
sub ShowMouse()
function MouseIsVisible()
sub GetMouse(byref x, byref y, byref mb1, byref mb2, byref mb3)
function MouseX()
function MouseY()
function MouseButton(mb)
sub GetMouseWheel(byref x_axis, byref y_axis)
function MouseWheelX()
function MouseWheelY()
sub GetGlobalMouse(ByRef x, ByRef y, ByRef mb1, ByRef mb2, ByRef mb3)
function GlobalMouseX()
function GlobalMouseY()
sub WarpMouse(x, y)
sub WarpMouseGlobal(x, y)
sub SetMouseZone(x, y, w, h)
sub ClearMouseZone()

View File

@@ -0,0 +1,37 @@
function Abs(n)
function ACos(n)
function AndBit(a,b)
function ASin(n)
function ATan(n)
function Bin$(n)
function CInt32(i)
function CInt64(i)
function Cos(n)
function Degrees(r)
function Exp(n)
function Frac(n)
function Hex$(n)
function HexVal(n$)
function Int(n)
function Log(n)
function Max(a, b)
function Min(a, b)
function OrBit(a, b)
function Radians(d)
function Randomize(n)
function Rand(n)
function Round(n)
function Sign(n)
function Sin(n)
function Sqrt(n)
function Tan(n)
function XOrBit(a, b)
Function GetLineIntersection(p0_x, p0_y, p1_x, p1_y, p2_x, p2_y, p3_x, p3_y, ByRef i_x, ByRef i_y)
Function Interpolate(min_a, max_a, mid_a, min_b, max_b)
Function ATan2(y, x)
function PointInQuad(x, y, x1, y1, x2, y2, x3, y3, x4, y4)
function PointInTri(x, y, x1, y1, x2, y2, x3, y3)
Function Distance2D(x1, y1, x2, y2)
Function Distance3D(x1, y1, z1, x2, y2, z2)
function GetCircleLineIntersection(circle_x, circle_y, radius, x1, y1, x2, y2, ByRef ix1, ByRef iy1, ByRef ix2, ByRef iy2)
function GetLinePlaneIntersection(ByRef line_point, ByRef line_direction, ByRef plane_point_1, ByRef plane_point_2, ByRef plane_point_3, ByRef intersection)

View File

@@ -0,0 +1,48 @@
function DimMatrix(m_rows, m_cols)
Sub DeleteMatrix(mA)
function AddMatrix(mA, mB, mC)
function AugmentMatrix (mA, mB, mC)
sub CopyMatrix(mA, mB)
function InsertMatrixColumns(mA, c, num_cols)
function InsertMatrixRows(mA, r, num_rows)
function MultiplyMatrix (mA, mB, mC)
function CubeMatrix(mA, mB)
function DeleteMatrixColumns(mA, c, num_cols)
function DeleteMatrixRows(mA, r, num_rows)
sub ClearMatrix(mA)
function ClearMatrixColumns (mA, c, num_cols)
function ClearMatrixRows(mA, r, num_rows)
sub FillMatrix(mA, v)
function FillMatrixColumns(mA, c, num_cols, v)
function FillMatrixRows(mA, r, num_rows, v)
function CopyMatrixColumns(mA, mB, c, num_cols)
function CopyMatrixRows (mA, mB, r, num_rows)
sub IdentityMatrix(mA, n)
function SolveMatrix(mA, mB, mC)
function IsEqualMatrix(mA, mB, tolerance)
function Determinant(mA)
function AdjointMatrix(mA, mB)
function InvertMatrix(mA, mB)
sub MatrixFromBuffer(mA, r, c, ByRef buffer)
sub GetMatrix(ByRef buffer, mA)
sub RandomizeMatrix(mA, vmin, vmax)
function MatrixValue(mA, r, c)
sub SetMatrixValue(mA, r, c, v)
sub ScalarMatrix (mA, mB, s_value)
function ScalarMatrixColumns(mA, mB, c, num_cols, s_value)
function ScalarMatrixRows(mA, mB, r, num_rows, s_value)
function SquareMatrix(mA, mB)
sub CofactorMatrix(mA, r, c)
function SubtractMatrix (mA, mB, mC)
sub SwapMatrix(mA, mB)
function SwapMatrixColumn(mA, C1, C2)
function SwapMatrixRow(mA, R1, R2)
function TransposeMatrix(mA, mB)
function UnAugmentMatrix(mA, mB, mC)
sub ZeroMatrix(mA)
sub GetMatrixSize(mA, ByRef r, ByRef c)
sub IncrementMatrixRows(mA, mB, r, num_rows, value)
sub IncrementMatrixColumns(mA, mB, c, num_cols, value)
sub JoinMatrixRows(mA, mB, mC)
sub JoinMatrixColumns(mA, mB, mC)
sub ClipMatrix(mA, r, c, num_rows, num_cols, mB)

View File

@@ -0,0 +1,5 @@
function LoadMesh( mesh_file$ )
sub DeleteMesh( mesh )
function CreateMesh( )
sub AddMeshBuffer( mesh, vertex_count, ByRef vertex_data, ByRef normal_data, ByRef uv_data, index_count, ByRef index_data )
function LoadMeshFromArchive( archive$, mesh_file$ )

View File

@@ -0,0 +1,18 @@
function CheckSockets(timeout_ms)
function TCP_SocketReady(socket)
function UDP_SocketReady(socket)
function TCP_OpenSocket(host$, port)
sub TCP_CloseSocket(socket)
function TCP_RemoteHost(socket)
function TCP_RemotePort(socket)
function TCP_GetData(socket, ByRef sData$, numBytes)
sub TCP_SendData(socket, sData$)
function TCP_AcceptSocket(server, client)
function UDP_OpenSocket(port)
sub UDP_CloseSocket(socket)
function UDP_GetData(socket, byref sData$, byref host$, byref port)
function UDP_Length()
function UDP_MaxLength()
function UDP_RemoteHost$(socket)
function UDP_RemotePort(socket)
sub UDP_SendData(socket, sData$, host$, port)

View File

@@ -0,0 +1,14 @@
sub Circle(x,y,radius)
sub CircleFill(x,y,radius)
sub Ellipse(x,y,rx,ry)
sub EllipseFill(x,y,rx,ry)
sub FloodFill(x,y)
function GetPixel(x,y)
sub SetColor(c)
sub Line(x1, y1, x2, y2)
sub Poly(n, byref x, byref y)
sub Rect(x, y, w, h)
sub RectFill(x, y, w, h)
function RGB(r,g,b)
function RGBA(r,g,b,a)
sub PSet(x,y)

View File

View File

@@ -0,0 +1,3 @@
function CreateSprite( img )
Sub DeleteSprite( sprite )
Sub SetSpritePosition( sprite, x, y )

View File

@@ -0,0 +1,14 @@
function CreateStack_N( )
function CreateStack_S()
sub ClearStack_N()
sub ClearStack_S()
sub DeleteStack_N( stack_id )
sub DeleteStack_S( stack_id )
sub Stack_N(n)
sub Stack_S(n)
sub Push_N(n)
function Pop_N()
sub Push_S(s$)
function Pop_S$()
function Stack_Size_N()
function Stack_Size_S()

View File

@@ -0,0 +1,26 @@
function Asc(c$)
function Chr$(n)
function Insert$(src$, tgt$, pos)
function InStr(src$, substr$)
function LCase$(src$)
function Left$(src$, n)
function Length(src$)
function Len(src$)
function LTrim$(src$)
function Mid$(src$, start, n)
function ReplaceSubstr$(src$, rpc$, pos)
function Replace$(src$, tgt$, rpc$)
function Reverse$(src$)
function Right$(src$, n)
function RTrim$(src$)
function StringFill$(src$, n)
function Str$(n)
function Str_F$(n)
function Str_S$(n)
function Tally(src$, substr$)
function Trim$(src$)
function UCase$(src$)
function Val(n$)
function Size(s$)
function BufferFromString(s$, ByRef buffer)
function StringFromBuffer$(ByRef buffer, buffer_size)

View File

@@ -0,0 +1,21 @@
function System(cmd$)
function OS$()
function Command$(arg)
function NumCommands()
function Env$(v$)
sub SetEnv(var$, value$, overwrite)
function PrefPath$(org_name$, app_name$)
function Android_GetExternalStoragePath$()
function Android_GetExternalStorageState()
function Android_GetInternalStoragePath$()
function Android_JNI_Message$(arg$)
function Runtime_Utility_Message$(arg$)
Sub GetDesktopDisplayMode(index, ByRef w, ByRef h, ByRef freq)
Sub GetPowerInfo(ByRef status, ByRef secs, ByRef pct)
Function EvalJS$(js_code$) 'Only useable in Emscripten
function SystemReturnStdOut$(cmd$) 'new
function OpenURL(url$)
function APIVersion$()
function MessageBox(title$, msg$)
function Runtime$()
function NumCPUs()

View File

@@ -0,0 +1,9 @@
function LoadFont(fnt_file$, size)
sub DeleteFont(slot)
Function FontExists(slot)
sub Font(slot)
sub DrawText(txt$, x, y)
sub RenderText(slot, txt$)
sub GetTextSize(txt$, byref w, byref h)
function GetTextWidth(txt$)
function GetTextHeight(txt$)

View File

@@ -0,0 +1,5 @@
sub ReadInput_Start()
sub ReadInput_Stop()
function ReadInput_Text$()
sub ReadInput_SetText(txt$)
sub ReadInput_ToggleBackspace(flag)

View File

View File

@@ -0,0 +1,11 @@
function TouchPressure()
sub GetTouch(byref status, byref x, byref y, byref dx, byref dy)
sub GetMultiTouch(byref status, byref x, byref y, byref fingers, byref dist, byref theta)
sub GetTouchFinger(finger, byref x, byref y, byref pressure)
function NumFingers()
sub GetAccel(accel_num, ByRef x, ByRef y, ByRef z)
function AccelName$(accel_num)
function NumAccels()
sub GetGyro(gyro_num, ByRef x, ByRef y, ByRef z)
function GyroName$(gyro_num)
function NumGyros()

View File

@@ -0,0 +1,16 @@
sub LoadVideo(vid$)
sub PlayVideo(vLoops)
sub PauseVideo()
sub StopVideo()
sub SetVideoPosition(pos)
sub ResumeVideo()
function VideoPosition()
sub DeleteVideo()
function VideoIsPlaying()
function VideoEnd()
sub GetVideoStats(vFile$, byref vLen, byref vfps, byref frame_w, byref frame_h)
sub SetVideoDrawRect(x, y, w, h)
sub GetVideoDrawRect(byref x, byref y, byref w, byref h)
sub GetVideoSize(byref w, byref h)
function VideoExists()
sub SetVideoAlpha(a)

View File

@@ -0,0 +1,51 @@
Function OpenWindow( title$, w, h, fullscreen, vsync )
function OpenWindowEx(title$, x, y, w, h, mode, aa, stencil_buffer, vsync)
sub CloseWindow( )
sub RaiseWindow( )
sub Update()
sub Cls()
sub SetClearColor(c)
sub ShowWindow( )
sub HideWindow( )
sub SetWindowTitle( title$ )
function WindowTitle$( )
sub SetWindowPosition( x, y )
sub GetWindowPosition( byref x, byref y )
sub SetWindowSize( w, h )
sub GetWindowSize( byref w, byref h )
sub SetWindowMinSize( w, h)
sub GetWindowMinSize( byref w, byref h)
sub SetWindowMaxSize( w, h)
sub GetWindowMaxSize( byref w, byref h)
function WindowIsFullscreen()
function WindowIsVisible()
function WindowIsBordered()
function WindowIsResizable()
function WindowIsMinimized()
function WindowIsMaximized()
function WindowHasInputFocus()
function WindowHasMouseFocus()
sub SetWindowFullscreen( flag)
sub MaximizeWindow()
sub MinimizeWindow()
sub SetWindowBorder( flag)
function WindowClip(x, y, w, h)
function WindowExists()
function NumWindows()
function WindowEvent_Close()
function WindowEvent_Maximize()
function WindowEvent_Minimize()
function FPS()
sub SetWindowIcon( slot)
function WindowEvent_Resize()
sub SetWindowAutoClose( exit_on_close )
sub SetWindowResizable( flag )
function WindowMode(visible, fullscreen, resizable, borderless, highDPI)
function getWindowMode( )
sub RestoreWindow( )
sub GrabInput(flag)
function GrabbedWindow()
sub SetWindowAlwaysOnTop(win, flag)
sub SetMouseRelative(flag)
sub SetWindowVSync(win, flag)
function FlashWindow(win)

Binary file not shown.

View File

@@ -1 +1,2 @@
embedded_functions.bas
/home/n00b/Projects/RCBASIC4/rcbasic_build/gfx.bas

View File

@@ -973,3 +973,5 @@ BU main #fu1 1
BU main.TypeArrayCopy dst 1
BU main.TypeArrayFill src 0
U main.TypeArrayFill fdata 1
N main.test_include_fn test1 0
N main.test_include_fn test2 1

Binary file not shown.

View File

@@ -1426,3 +1426,6 @@ add_embedded_arg("dst", ID_TYPE_BYREF_USER, 0);
embed_function("TypeArrayFill", ID_TYPE_SUB);
add_embedded_arg("src", ID_TYPE_BYREF_USER, 0);
add_embedded_arg("fdata", ID_TYPE_USER, 0);
embed_function("test_include_fn", ID_TYPE_SUB);
add_embedded_arg("test1", ID_TYPE_NUM);
add_embedded_arg("test2", ID_TYPE_NUM);

View File

@@ -1426,3 +1426,6 @@
#define FN_TypeArrayFill 474
#define TYPEARRAYFILL_SRC usr_var[0].var_ref
#define TYPEARRAYFILL_FDATA usr_var[1].var_ref->uid_value[0]
#define FN_test_include_fn 475
#define TEST_INCLUDE_FN_TEST1 num_var[0].nid_value.value[ num_var[0].byref_offset ]
#define TEST_INCLUDE_FN_TEST2 num_var[1].nid_value.value[ num_var[1].byref_offset ]

View File

@@ -948,3 +948,5 @@ case FN_TypeArrayCopy: //Sub Procedure
break;
case FN_TypeArrayFill: //Sub Procedure
break;
case FN_test_include_fn: //Sub Procedure
break;