Functional Keyword List

List of FreeBASIC keywords sorted by the function they perform.

Arrays
   * Arraylen
   * Arraysize
   * Erase
   * Fbarray (Array Descriptor Structure And Access)
   * LBound
   * ReDim
   * Preserve
   * UBound

Bit manipulation
   * Bit
   * BitReset
   * BitSet
   * HiByte
   * HiWord
   * LoByte
   * LoWord

Compiler switches
   * DefByte
   * DefDbl
   * DefInt
   * DefLng
   * DefLongInt
   * DefShort
   * DefSng
   * DefStr
   * DefUByte
   * DefUInt
   * Defulongint
   * DefUShort
   * Option Base
   * Option ByVal
   * Option Dynamic
   * Option Escape
   * Option Explicit
   * Option Gosub
   * Option Nogosub
   * Option NoKeyword
   * Option Private
   * Option Static

Console
   * ? (Shortcut For 'Print')
   * ? Using (Shortcut For 'Print Using')
   * Beep
   * Cls
   * Color
   * CsrLin
   * Locate
   * Open Cons
   * Open Err
   * Open Pipe
   * Open Scrn
   * Pos
   * Print
   * Print Using
   * Screen (Console)
   * Spc
   * Tab
   * View (Console)
   * Width
   * Write

Data types and declarations
   * Alias (Modifier)
   * As
   * Boolean
   * Byref (Variables)
   * Byte
   * Class
   * Const
   * Const (Qualifier)
   * Dim
   * Double
   * Enum
   * Extends
   * Extends Wstring
   * Extends Zstring
   * Function (Pointer)
   * Implements
   * Integer
   * Long
   * LongInt
   * Object
   * Scope
   * Shared
   * Short
   * Single
   * Static
   * String
   * Sub (Pointer)
   * Type
   * Type (Alias)
   * Type (Temporary)
   * UByte
   * UInteger
   * ULong
   * ULongInt
   * Union
   * Unsigned
   * UShort
   * Var
   * With
   * WString
   * ZString

Date and time
   * Date
   * DateAdd
   * DateDiff
   * DatePart
   * DateSerial
   * DateValue
   * Day
   * Hour
   * IsDate
   * Minute
   * Month
   * MonthName
   * Now
   * Second
   * SetDate
   * SetTime
   * Time
   * TimeSerial
   * TimeValue
   * Timer
   * Year
   * Weekday
   * WeekdayName

Debug support
   * Assert
   * AssertWarn
   * Stop

Error handling
   * Erfn
   * Erl 
   * Ermn
   * Err
   * Error
   * Local
   * On Error
   * Resume
   * Resume Next

Files
   * ? # (Shortcut For 'Print #')
   * Access
   * Append
   * Binary
   * BLoad
   * BSave
   * Close
   * Encoding
   * EOF
   * FreeFile
   * Get # (File I/O)
   * Input (File I/O)
   * Input #
   * Line Input #
   * LOC
   * Lock
   * LOF
   * Open
   * Output
   * Print #
   * Put # (File I/O)
   * Random
   * Read (File Access)	
   * Read Write (File Access)
   * Reset	
   * Seek (Statement)
   * Seek (Function)
   * Unlock
   * Write #
   * Write (File Access)	

Graphics
   * Add (Graphics Put)
   * Alpha (Graphics Put)
   * And (Graphics Put)
   * Circle
   * Cls
   * Color
   * Custom (Graphics Put)
   * Draw
   * Draw String
   * Event (Message Data From Screenevent)
   * Flip
   * Get (Graphics)
   * ImageConvertRow
   * ImageCreate
   * ImageDestroy
   * ImageInfo
   * Line
   * Or (Graphics Put)
   * Paint
   * Palette
   * PCopy
   * PMap
   * Point
   * PointCoord
   * PReset
   * PSet
   * Pset (Graphics Put)
   * Put (Graphics)
   * RGB
   * RGBA
   * Screen
   * ScreenControl
   * ScreenCopy
   * ScreenEvent
   * ScreenInfo
   * ScreenGLProc
   * ScreenList
   * ScreenLock
   * ScreenPtr
   * ScreenRes
   * ScreenSet
   * ScreenSync
   * ScreenUnlock
   * Trans (Graphics Put)
   * View (Graphics)
   * Window
   * Xor (Graphics Put)

Hardware access
   * Inp
   * Out
   * Wait
   * Open Com
   * Open Lpt
   * LPos
   * LPrint

Assignment Operators
   * =[>] (Assignment)
   * &= (Concatenate And Assign)
   * += (Add And Assign)
   * -= (Subtract And Assign)
   * *= (Multiply And Assign)
   * /= (Divide And Assign)
   * \= (Integer Divide And Assign)
   * ^= (Exponentiate And Assign)
   * Mod= (Modulus And Assign)
   * And= (Conjunction And Assign)
   * Eqv= (Equivalence And Assign)
   * Imp= (Implication And Assign)
   * Or= (Inclusive Disjunction And Assign)
   * Xor= (Exclusive Disjunction And Assign)
   * Shl= (Shift Left And Assign)
   * Shr= (Shift Right And Assign)
   * Let (Assignment)
   * Let() (Assignment)

Arithmetic Operators
   * + (Add)
   * - (Subtract)
   * * (Multiply)
   * / (Divide)
   * \ (Integer Divide)
   * ^ (Exponentiate)
   * Mod (Modulus)
   * - (Negate)
   * Shl (Shift Left)
   * Shr (Shift Right)

Bitwise operators
   * And
   * Eqv
   * Imp
   * Or
   * Not
   * Xor

Short Circuit operators
   * AndAlso
   * OrElse

Math
   * Abs
   * Acos
   * Asin
   * Atan2
   * Atn
   * Cos
   * Exp
   * Fix
   * Frac
   * Int
   * Log
   * Randomize
   * Rnd
   * Sgn
   * Sin
   * Sqr
   * Tan

Memory
   * Allocate
   * CAllocate
   * Clear
   * Deallocate
   * Delete
   * Fb_Memcopy
   * fb_MemCopyClear
   * Fb_Memmove
   * Field
   * Fre
   * New
   * Peek
   * Poke
   * Reallocate

Meta Commands
   * $Dynamic
   * $Static
   * $Include
   * $Lang

Miscellaneous
   * Asm
   * Data
   * End (Block)
   * Is (Run-Time Type Information Operator)
   * Let
   * OffsetOf
   * Option()
   * To
   * Read
   * Rem
   * Restore
   * SizeOf
   * Swap
   * TypeOf
Modularizing
   * Common
   * DyLibFree
   * DyLibLoad
   * DyLibSymbol
   * Export
   * Extern
   * Extern...End Extern
   * Import
   * Namespace
   * Private
   * Public
   * Using (Namespaces)

Multithreading
   * CondBroadcast
   * CondCreate
   * CondDestroy
   * CondSignal
   * CondWait
   * MutexCreate
   * MutexDestroy
   * MutexLock
   * MutexUnlock
   * ThreadCall
   * ThreadCreate
   * ThreadDetach
   * ThreadSelf
   * ThreadWait

OS / shell
   * Chain
   * ChDir
   * Command
   * CurDir
   * Dir
   * End (Statement)
   * Environ
   * Exec
   * ExePath
   * FileAttr
   * FileCopy
   * FileDateTime
   * FileExists
   * FileFlush
   * FileSetEof
   * FileLen
   * IsRedirected
   * Kill
   * MkDir
   * Name
   * RmDir
   * Run
   * SetEnviron
   * Shell
   * System
   * WindowTitle

Pointers
   * Pointer
   * ProcPtr
   * Ptr (Shortcut For 'Pointer')
   * SAdd
   * StrPtr
   * VarPtr

Predefined symbols
   * __DATE__ 
   * __DATE_ISO__ 
   * __FB_64BIT__
   * __FB_ARG_COUNT__
   * __FB_ARG_EXTRACT__
   * __FB_ARG_LEFTOF__
   * __FB_ARG_RIGHTOF__
   * __FB_ARGC__
   * __FB_ARGV__
   * __FB_ARM__
   * __FB_ASM__
   * __FB_BACKEND__
   * __FB_BIGENDIAN__
   * __FB_BUILD_DATE__
   * __FB_BUILD_DATE_ISO__
   * __FB_BUILD_SHA1__
   * __FB_CYGWIN__
   * __FB_DARWIN__
   * __FB_DEBUG__
   * __FB_DOS__
   * __FB_ERR__
   * __FB_EVAL__
   * __FB_FPMODE__
   * __FB_FPU__
   * __FB_FREEBSD__
   * __FB_GCC__
   * __FB_GUI__
   * __FB_IIF__
   * __FB_JOIN__
   * __FB_LANG__
   * __FB_LINUX__
   * __FB_MAIN__
   * __FB_MIN_VERSION__
   * __FB_MT__
   * __FB_NETBSD__
   * __FB_OPENBSD__
   * __FB_OPTIMIZE__
   * __FB_OPTION_BYVAL__
   * __FB_OPTION_DYNAMIC__
   * __FB_OPTION_ESCAPE__
   * __FB_OPTION_EXPLICIT__
   * __FB_OPTION_GOSUB__
   * __FB_OPTION_PRIVATE__
   * __FB_OUT_DLL__
   * __FB_OUT_EXE__
   * __FB_OUT_LIB__
   * __FB_OUT_OBJ__
   * __FB_PCOS__
   * __FB_PPC__
   * __Fb_Query_Symbol__
   * __FB_QUOTE__
   * __FB_SIGNATURE__ 
   * __FB_SSE__
   * __FB_UNIQUEID__
   * __FB_UNIQUEID_POP__
   * __FB_UNIQUEID_PUSH__
   * __FB_UNIX__
   * __FB_UNQUOTE__
   * __FB_VECTORIZE__
   * __FB_VER_MAJOR__
   * __FB_VER_MINOR__
   * __FB_VER_PATCH__
   * __FB_VERSION__
   * __FB_WIN32__
   * __FB_XBOX__
   * __FB_X86__
   * __FILE__
   * __FILE_NQ__
   * __FUNCTION__
   * __FUNCTION_NQ__
   * __LINE__
   * __PATH__
   * __TIME__
   * False
   * True

Preprocessor
   * #assert
   * #Cmdline
   * #define
   * #else
   * #elseif
   * #endif
   * #endmacro
   * #error
   * #if
   * #ifdef
   * #ifndef
   * #inclib
   * #include
   * #libpath
   * #lang
   * #line
   * #macro
   * #pragma
   * #Pragma Reserve
   * #print
   * #undef
   * defined
   * Once

Procedures
   * Abstract (Member)
   * Alias
   * Any
   * Base (Initialization)
   * Base (Member Access)
   * Byref (Parameters)
   * Byref (Function Results)
   * ByVal
   * Call
   * cdecl
   * Const (Member)
   * Constructor
   * Constructor (Module)
   * Destructor
   * Destructor (Module)
   * Declare
   * Fastcall
   * Function
   * Function (Member)
   * Lib
   * Naked
   * Operator
   * Overload
   * Override
   * pascal
   * Private  (Member)
   * Protected  (Member)
   * Property
   * Public (Member)
   * Static (Member)
   * Sub
   * Sub (Member)
   * stdcall
   * This
   * Thiscall
   * Virtual (Member)

Variadic Procedures
   * ...
   * Cva_Arg
   * Cva_Copy
   * Cva_End
   * Cva_List
   * Cva_Start
   * va_arg
   * va_first
   * va_next

Program flow
   * Continue
   * Case
   * Do
   * Do...Loop
   * Else
   * ElseIf
   * End If
   * Exit
   * GoSub
   * Goto
   * If...Then
   * IIf
   * Is (Select Case)
   * For
   * For...Next
   * Loop
   * Next
   * On...Gosub
   * On...Goto
   * Return (From Procedure)
   * Return (From Gosub)
   * Select Case
   * Sleep
   * Step
   * Then
   * Until
   * Wend
   * While
   * While...Wend

String functions
   * InStr
   * InStrRev
   * LCase
   * Left
   * Len
   * LSet
   * LTrim
   * Mid (Statement)
   * Mid (Function)
   * Right
   * RSet
   * RTrim
   * Space
   * String (Function)
   * Trim
   * UCase
   * WSpace
   * Wstring (Function)

String and number conversion
   * Asc
   * Bin
   * Chr
   * CVD
   * CVI
   * CVL
   * CVLongInt
   * CVS
   * CVShort
   * Format
   * Hex
   * MKD
   * MKI
   * MKL
   * MKLongInt
   * MKS
   * MKShort
   * Oct
   * Str
   * Val
   * ValLng
   * ValInt
   * ValUInt
   * ValULng
   * WBin
   * WChr
   * WHex
   * WOct
   * WStr

Type casting/conversion
   * Cast
   * CBool
   * CByte
   * CDbl
   * CInt
   * CLng
   * CLngInt
   * CPtr
   * CShort
   * CSign
   * CSng
   * CUByte
   * CUInt
   * CULng
   * CULngInt
   * CUnsg
   * CUShort

User input
   * GetJoystick
   * GetKey
   * GetMouse
   * Inkey
   * Input()
   * Input (Statement)
   * Line Input
   * MultiKey
   * SetMouse
   * Stick
   * Strig
   * WInput

