Thanks all for testing. Under certain circumstances it could cause trouble on Multicore and Hyper-Threading systems (which will probably also be the case for other threading methods). This should be solved now.
Quote: "There is about 200 commands in STYX, is there somewhere a list of them?"
Here's a preliminary list of commands in STYX 1.10 (now more than 250):
COM, ActiveX, .NET
DELETE COM
LOAD COM CLASS
LOAD COM DLL
MAKE COM INSTANCE
SET COM FLOAT
SET COM INTEGER
SET COM POINTER
SET COM STRING
CALL COM FUNC
COM CLASS AVAILABLE
COM CLASS EXIST
COM DLL AVAILABLE
COM MEMBER COUNT
COM MEMBER EXIST
GET COM FLOAT
GET COM INTEGER
GET COM POINTER
GET COM STRING
REGISTER DLL
REGISTER NET DLL
UNREGISTER DLL
UNREGISTER NET DLL
Dialogs
COLOR DIALOG COLORS
COLOR DIALOG OPTIONS
MSG BUTTON TEXT
MSG CHECKBOX TEXT
OPEN DIALOG OPTIONS
SAVE DIALOG OPTIONS
SHOW MESSAGE
EXECUTE COLOR DIALOG
EXECUTE FOLDER DIALOG
EXECUTE OPEN DIALOG
EXECUTE SAVE DIALOG
GET COLOR DIALOG COLORS
GET MSG CHECKBOX
MESSAGE BOX
MSG DIALOG
Error Trapping
ERROR TRAPPING OFF
ERROR TRAPPING ON
RAISE ERROR
GET LAST ERROR
Filenames & Filepaths
File Names and Paths
ADD BACKSLASH
REMOVE BACKSLASH
CHANGE FILEEXT$
EXPAND FILENAME$
EXTRACT FILEDRIVE$
EXTRACT FILEEXT$
EXTRACT FILENAME$
EXTRACT FILEPATH$
MAKE TEMPFILE$
RELATIVE FILEPATH$
TEMPDIR$
Flash Movies
DELETE FLASH
FLASH COLOR
FLASH DRAW MODE
FLASH HEIGHT
FLASH LOOP MODE
FLASH MOVIE
FLASH WIDTH
FORWARD FLASH
GET FLASH PROPERTY$
HIDE FLASH
LOAD FLASH
PLAY FLASH
POSITION FLASH
RESIZE FLASH
REWIND FLASH
SET FLASH FRAME
SET FLASH PROPERTY
SET FLASH VAR
STOP FLASH
FLASH EXIST
FLASH FRAME COUNT
GET FLASH FRAME
GET FLASH HEIGHT
GET FLASH VAR$
GET FLASH WIDTH
IS FLASH PLAYING
INI Files
CLOSE INI FILE
ERASE INI SECTION
OPEN INI FILE
READ INI CS VALUES
SET INI VALUE
WRITE INI CS VALUES
GET INI KEY NAME
GET INI SECTION LINE
GET INI SECTION NAME
GET INI VALUE#
GET INI VALUE$
GET INI VALUE
INI EXIST
INI KEY COUNT
INI KEY EXIST
INI OPEN
INI SECTION COUNT
INI SECTION EXIST
Intervals, References and Callbacks
CALLBACK RESULT
DELETE CALLBACK
DELETE INTERVAL
DELETE REFERENCE
REFERENCE RESULT
REGISTER FUNCTION : {function name} : CALLBACK|INTERVAL|REFERENCE
SAFE FASTSYNC
SAFE START INTERVAL
SAFE SYNC
START INTERVAL
STOP INTERVAL
CALL REFERENCE
CALLBACK ARG COUNT
CALLBACK ARG
CALLBACK EXIST
CALLBACK PTR
INTERVAL EXIST
INTERVAL RUNNING
REFERENCE ARG COUNT
REFERENCE ARG
REFERENCE EXIST
REFERENCE PTR
REGISTER CALL
Memory Access
MEMORY SAVE MODE
POKE BYTE
POKE DOUBLE FLOAT
POKE DOUBLE INTEGER
POKE FLOAT
POKE LONG
POKE STRING
POKE WORD
PEEK BYTE
PEEK DOUBLE FLOAT
PEEK DOUBLE INTEGER
PEEK FLOAT
PEEK LONG
PEEK STRING
PEEK WORD
MIDI Out
CLOSE MIDI OUT
OPEN MIDI OUT
PERFORM CHECKLIST FOR MIDI OUT DEVICES
SEND MIDI MSG
SEND MIDI NOTE OFF
SEND MIDI NOTE ON
SEND MIDI SHORT MSG
SET MIDI PATCH
MIDI OUT EXIST
Number Operations
ADD EXPRESSION VAR
DELETE ALL EXPRESSION VARS
DELETE EXPRESSION VAR
BCHG
BCLR
BSET
BTST
DISTANCE
EVALUATE EXPRESSION
EVEN
EXPRESSION VAR COUNT
EXPRESSION VAR EXIST
FML ABS
FML ACOS
FML ASIN
FML ATAN
FML ATANFULL
FML COS
FML COSH
FML EXP
FML LN
FML LOG10
FML LOG2
FML LOGN
FML POWER
FML SIN
FML SINH
FML SQRT
FML TAN
FML TANH
GET EVALUATION ERROR
GET EXPRESSION VAR NAME
GET EXPRESSION VAR VALUE
GET EXPRESSION VAR
HIBYTE
HILONG
HIWORD
LOBYTE
LOLONG
LOWORD
MAKE DOUBLE INTEGER
MAKE LONG
MAKE WORD
MAX
MIN
ODD
String Operations
TOKEN DELIMITERS
TOKEN STRING DELIMITERS
TOKEN SYMBOLS
TOKENIZE ARRAY
TOKENIZE STRING
COMPARE STRINGS
COPY$
DELETE$
GET NEXT TOKEN$
GET TOKEN COL
GET TOKEN LINE
GET TOKEN TYPE
INSERT$
INSTR
LTRIM$
MAKE$
MIDDLE
REPLACE$
RINSTR
RTRIM$
SPLIT$
TRIM$
Window Commands
ACTIVATE WINDOW
BRING WINDOW TO FRONT
CENTER WINDOW
FLASH WINDOW
MAKE APP MESSAGE
MESSAGE BEEP
POST APP MESSAGE
PROCESS WIN MESSAGES
SEND WINDOW TO BACK
SET WINDOW TOPMOST
WINAPI SLEEP
FIND DBPRO WINDOW
FIND WINDOW
GET APP MESSAGE PARAM1
GET APP MESSAGE PARAM2
INSTANCE HANDLE
IS SINGLE INSTANCE
IS WINDOW ACTIVE
QUERY APP MESSAGES
WINDOW CLIENT HEIGHT
WINDOW CLIENT WIDTH
WINDOW HANDLE
WINDOW HEIGHT
WINDOW MOVED
WINDOW RESIZED
WINDOW STATE
WINDOW WIDTH
WINDOW X
WINDOW Y
Window Shaper and Splash Screen
DELETE SPLASH
SET SPLASH PROGRESS
SHAPE DRAG MODE
SHAPE WINDOW
SHOW SPLASH
UNSHAPE WINDOW
MOUSE IN DRAG ZONE
POINT IN DRAG ZONE
XML Files
ADD XML NODE
CLOSE XML NODE
CURRENT XML NODE
DELETE XML NODE
DELETE XML
LOAD XML
MAKE XML
OPEN NEW XML NODE
RENAME XML NODE
SAVE XML
XML NODE ATTRIB
XML NODE TO CHILD
XML NODE TO PARENT
XML NODE TO ROOT
XML NODE VALUE
GET XML NODE ATTRIB NAME
GET XML NODE ATTRIB VALUE
GET XML NODE ATTRIB
GET XML NODE LEVEL
GET XML NODE NAME
GET XML NODE VALUE#
GET XML NODE VALUE$
GET XML NODE VALUE
NEXT XML NODE
PREV XML NODE
XML CHILD NODE COUNT
XML EXIST
XML NODE EXIST
XML ROOT NODE COUNT