[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] | Reference for unit 'System' (#rtl)

# Reference for unit 'System': Procedures and functions

`abs` |  | Calculate absolute value
`AbstractError` |  | Generate an abstract error.
`AcquireExceptionObject` |  | Obtain a reference to the current exception object
`AddExitProc` |  | Add an exit procedure to the exit procedure chain.
`Addr` |  | Return address of a variable
`Align` |  | Return aligned version of an address
`AllocMem` |  | Allocate and clear memory.
`AnsiToUtf8` |  | Convert ansi string to UTF-8 string
`Append` |  | Open a file in append mode
`arctan` |  | Calculate inverse tangent
`ArrayStringToPPchar` |  | Concert an array of string to an array of null-terminated strings
`Assert` |  | Check validity of a given condition.
`Assign` |  | Assign a name to a file
`Assigned` |  | Check if a pointer is valid
`BasicEventCreate` |  | Obsolete. Don't use
`basiceventdestroy` |  | Obsolete. Don't use
`basiceventResetEvent` |  | Obsolete. Don't use
`basiceventSetEvent` |  | Obsolete. Don't use
`basiceventWaitFor` |  | Obsolete. Don't use
`BeginThread` |  | Start a new thread.
`BEtoN` |  | Convert Big Endian-ordered integer to Native-ordered integer
`binStr` |  | Convert integer to string with binary representation.
`BlockRead` |  | Read data from an untyped file into memory
`BlockWrite` |  | Write data from memory to an untyped file
`Break` |  | Exit current loop construct.
`BsfByte` |  | Return the position of the rightmost set bit in an 8-bit value
`BsfDWord` |  | Return the position of the rightmost set bit in a 32-bit value
`BsfQWord` |  | Return the position of the rightmost set bit in a 64-bit value
`BsfWord` |  | Return the position of the rightmost set bit in a 16-bit value
`BsrByte` |  | Return the position of the leftmost set bit in an 8-bit value
`BsrDWord` |  | Return the position of the leftmost set bit in a 32-bit value
`BsrQWord` |  | Return the position of the leftmost set bit in a 64-bit value
`BsrWord` |  | Return the position of the leftmost set bit in a 16-bit value
`chdir` |  | Change current working directory.
`chr` |  | Convert byte value to character value
`Close` |  | Close a file
`CloseThread` |  | Close a thread and free up resources used by the thread
`CompareByte` |  | Compare 2 memory buffers byte per byte
`CompareChar` |  | ompare 2 memory buffers character per character
`CompareChar0` |  | Compare two buffers character by character till a null-character is reached.
`CompareDWord` |  | Compare 2 memory buffers DWord per DWord
`CompareWord` |  | Compare 2 memory buffers word per word
`Concat` |  | Append one string to another.
`Continue` |  | Continue with next loop cycle.
`Copy` |  | Copy part of a string.
`cos` |  | Calculate cosine of angle
`Cseg` |  | Return code segment
`Dec` |  | Decrease value of variable
`DefaultAnsi2UnicodeMove` |  | Standard widestring manager callback
`DefaultAnsi2WideMove` |  | Standard implementation of Ansi to Widestring conversion routine
`DefaultUnicode2AnsiMove` |  | Standard widestring manager callback
`DefaultWide2AnsiMove` |  | Standard implementation of Widestring to Ansi conversion routine
`Delete` |  | Delete part of a string.
`Dispose` |  | Free dynamically allocated memory
`DoneCriticalsection` |  | Clean up a critical section.
`DoneThread` |  | End the current thread
`Dseg` |  | Return data segment
`DumpExceptionBackTrace` |  | Create backtrace
`Dump_Stack` |  | Dump stack to the given text file.
`DynArraySetLength` |  | Set the length of a dynamic array
`EndThread` |  | End the current thread.
`EnterCriticalsection` |  | Enter a critical section
`EnumResourceLanguages` |  | Enumerate available languages for a resource of given type and name
`EnumResourceNames` |  | Enumerate available resource names for a specified resource type
`EnumResourceTypes` |  | Enumerate available resource types
`EOF` |  | Check for end of file
`EOLn` |  | Check for end of line
`Erase` |  | Delete a file from disk
`Error` |  | Generate run-time error
`Exclude` |  | Exlude element from a set if it is present.
`Exit` |  | Exit current subroutine.
`exp` |  | Exponentiate
`FilePos` |  | Get position in file
`FileSize` |  | Size of file
`FillByte` |  | Fill memory region with 8-bit pattern
`FillChar` |  | Fill memory region with certain character
`FillDWord` |  | Fill memory region with 32-bit pattern
`FillQWord` |  | Fill memory range with QWord (64-bit) values
`FillWord` |  | Fill memory region with 16-bit pattern
`FindResource` |  | Locate a resource and return a handle to it.
`FindResourceEx` |  | Find a resource based on type, name, language
`float_raise` |  | Raise floating point exception
`Flush` |  | Write file buffers to disk
`FlushThread` |  | Flush all standard files
`FPower10` |  | Fast multiply with a power of 10
`frac` |  | Return fractional part of floating point value.
`Freemem` |  | Release allocated memory
`Freememory` |  | Alias for FreeMem
`FreeResource` |  | Free a loaded resource
`GetCurrentThreadId` |  | Return the id of the currently running thread.
`getdir` |  | Return the current directory
`GetFPCHeapStatus` |  | Return FPC heap manager status information
`GetHeapStatus` |  | Return the memory manager heap status.
`GetMem` |  | Allocate new memory on the heap
`GetMemory` |  | Alias for GetMem
`GetMemoryManager` |  | Return current memory manager
`GetProcessID` |  | Get the current process ID
`GetResourceManager` |  | Return the currently active resource manager
`GetThreadID` |  | Get the current Thread ID.
`GetThreadManager` |  | Return the current thread manager
`GetUnicodeStringManager` |  | Return a copy of the currently active unicodetring manager.
`GetVariantManager` |  | Return the current variant manager.
`GetWideStringManager` |  | Return a copy of the currently active widestring manager.
`get_caller_addr` |  | Return the address of the caller.
`get_caller_frame` |  | Return the frame pointer of the caller
`get_cmdline` |  | Return the command-line as a null-terminated string
`get_frame` |  | Return the current frame
`halt` |  | Stop program execution.
`hexStr` |  | Convert integer value to string with hexadecimal representation.
`hi` |  | Return high byte/word/nibble of value.
`High` |  | Return highest index of open array or enumerated
`HINSTANCE` |  | Windows compatibility type for use in resources
`Inc` |  | Increase value of integer variable
`Include` |  | Include element in set if it was not yet present.
`IndexByte` |  | Search for a byte in a memory range.
`IndexChar` |  | Search for a character in a memory range.
`IndexChar0` |  | Return index of a character in null-terminated array of char.
`IndexDWord` |  | Search for a DWord value in a memory range.
`IndexQWord` |  | Return the position of a QWord in a memory range
`Indexword` |  | Search for a WORD value in a memory range.
`InitCriticalSection` |  | Initialize a critical section
`InitThread` |  | Initialize a thread
`InitThreadVars` |  | Initialize threadvars
`Insert` |  | Insert one string in another.
`int` |  | Calculate integer part of floating point value.
`InterlockedCompareExchange` |  | Conditional exchange
`InterLockedDecrement` |  | Thread-safe decrement
`InterLockedExchange` |  | Exchange 2 integers in a thread-safe way
`InterLockedExchangeAdd` |  | Thread-safe add and exchange of 2 values
`InterLockedIncrement` |  | Thread-safe increment
`IOResult` |  | Return result of last file IO operation
`IsMemoryManagerSet` |  | Is the memory manager set
`Is_IntResource` |  | Check whether a resource is an internal resource
`KillThread` |  | Kill a running thread
`LeaveCriticalsection` |  | Leave a critical section
`Length` |  | Returns length of a string or array.
`LEtoN` |  | Convert Little Endian-ordered integer to Native-ordered integer
`ln` |  | Calculate logarithm
`lo` |  | Return low nibble/byte/word of value.
`LoadResource` |  | Load a resource for use
`LockResource` |  | Lock a resource
`longjmp` |  | Jump to address.
`Low` |  | Return lowest index of open array or enumerated
`lowerCase` |  | Return lowercase version of a string.
`MakeLangID` |  | Create a langauge ID
`MemSize` |  | Return the size of a memory block.
`mkdir` |  | Create a new directory.
`Move` |  | Move data from one location in memory to another
`MoveChar0` |  | Move data till first zero character
`New` |  | Dynamically allocate memory for variable
`NtoBE` |  | Convert Native-ordered integer to a Big Endian-ordered integer
`NtoLE` |  | Convert Native-ordered integer to a Little Endian-ordered integer
`Null` |  | Null variant
`OctStr` |  | Convert integer to a string with octal representation.
`odd` |  | Is a value odd or even ?
`Ofs` |  | Return offset of a variable.
`operator *(variant, variant): variant` |  | Implement multiplication (*) operation on variants.
`operator **(variant, variant): variant` |  | Implement power (**) operation on variants.
`operator +(variant, variant): variant` |  | Implement addition (+) operation on variants.
`operator -(variant): variant` |  | Implement - (unary minus, negation) operation on variants.
`operator -(variant, variant): variant` |  | Implement subtraction (-) operation on variants.
`operator /(variant, variant): variant` |  | Implement division (/) operation on variants.
`operator :=(ansistring): olevariant` |  |
`operator :=(ansistring): variant` |  |
`operator :=(Boolean): olevariant` |  |
`operator :=(Boolean): variant` |  |
`operator :=(Byte): olevariant` |  |
`operator :=(Byte): variant` |  |
`operator :=(Char): olevariant` |  |
`operator :=(Char): variant` |  |
`operator :=(comp): olevariant`
`operator :=(comp): variant`
`operator :=(currency): olevariant` |  |
`operator :=(currency): variant` |  |
`operator :=(Double): olevariant` |  |
`operator :=(Double): variant` |  |
`operator :=(DWord): olevariant` |  |
`operator :=(DWord): variant` |  |
`operator :=(extended): olevariant`
`operator :=(extended): variant`
`operator :=(Int64): olevariant` |  |
`operator :=(Int64): variant` |  |
`operator :=(longbool): olevariant` |  |
`operator :=(longbool): variant` |  |
`operator :=(LongInt): olevariant` |  |
`operator :=(LongInt): variant` |  |
`operator :=(olevariant): ansistring` |  |
`operator :=(olevariant): Boolean` |  |
`operator :=(olevariant): Byte` |  |
`operator :=(olevariant): Char` |  |
`operator :=(olevariant): comp`
`operator :=(olevariant): currency` |  |
`operator :=(olevariant): Double` |  |
`operator :=(olevariant): DWord` |  |
`operator :=(olevariant): extended`
`operator :=(olevariant): Int64` |  |
`operator :=(olevariant): longbool` |  |
`operator :=(olevariant): LongInt` |  |
`operator :=(olevariant): QWord` |  |
`operator :=(olevariant): Real`
`operator :=(olevariant): ShortInt` |  |
`operator :=(olevariant): shortstring` |  |
`operator :=(olevariant): single`
`operator :=(olevariant): SmallInt` |  |
`operator :=(olevariant): TDateTime` |  |
`operator :=(olevariant): TError` |  |
`operator :=(olevariant): UnicodeString`
`operator :=(olevariant): variant` |  |
`operator :=(olevariant): WideChar` |  |
`operator :=(olevariant): widestring` |  |
`operator :=(olevariant): Word` |  |
`operator :=(olevariant): wordbool` |  |
`operator :=(QWord): olevariant` |  |
`operator :=(QWord): variant` |  |
`operator :=(Real): olevariant`
`operator :=(Real): variant`
`operator :=(real48): Double` |  |
`operator :=(real48): extended`
`operator :=(ShortInt): olevariant` |  |
`operator :=(ShortInt): variant` |  |
`operator :=(shortstring): olevariant` |  |
`operator :=(shortstring): variant` |  |
`operator :=(single): olevariant`
`operator :=(single): variant`
`operator :=(SmallInt): olevariant` |  |
`operator :=(SmallInt): variant` |  |
`operator :=(TDateTime): olevariant` |  |
`operator :=(TDateTime): variant` |  |
`operator :=(TError): olevariant` |  |
`operator :=(TError): variant` |  |
`operator :=(UCS4String): variant`
`operator :=(UnicodeString): olevariant`
`operator :=(UnicodeString): variant`
`operator :=(UTF8String): variant`
`operator :=(variant): ansistring` |  |
`operator :=(variant): Boolean` |  |
`operator :=(variant): Byte` |  |
`operator :=(variant): Char` |  |
`operator :=(variant): comp`
`operator :=(variant): currency` |  |
`operator :=(variant): Double` |  |
`operator :=(variant): DWord` |  |
`operator :=(variant): extended`
`operator :=(variant): Int64` |  |
`operator :=(variant): longbool` |  |
`operator :=(variant): LongInt` |  |
`operator :=(variant): olevariant` |  |
`operator :=(variant): QWord` |  |
`operator :=(variant): Real`
`operator :=(variant): ShortInt` |  |
`operator :=(variant): shortstring` |  |
`operator :=(variant): single`
`operator :=(variant): SmallInt` |  |
`operator :=(variant): TDateTime` |  |
`operator :=(variant): TError` |  |
`operator :=(variant): unicodestring`
`operator :=(variant): UTF8String`
`operator :=(variant): WideChar` |  |
`operator :=(variant): widestring` |  |
`operator :=(variant): Word` |  |
`operator :=(variant): wordbool` |  |
`operator :=(WideChar): olevariant` |  |
`operator :=(WideChar): variant` |  |
`operator :=(widestring): olevariant` |  |
`operator :=(widestring): variant` |  |
`operator :=(Word): olevariant` |  |
`operator :=(Word): variant` |  |
`operator :=(wordbool): olevariant` |  |
`operator :=(wordbool): variant` |  |
`operator <(variant, variant): Boolean` |  | Implement < (less than) operation on variants.
`operator <=(variant, variant): Boolean` |  | Implement <= (less than than or equal) operation on variants.
`operator =(variant, variant): Boolean` |  | Implement = (equality) operation on variants.
`operator >(variant, variant): Boolean` |  | Implement > (greater than) operation on variants.
`operator >=(variant, variant): Boolean` |  | Implement >= (greater than or equal) operation on variants.
`operator and(variant, variant): variant` |  | Implement logical/binary and operation on variants
`operator div(variant, variant): variant` |  | Implement div (integer division) operation on variants.
`operator mod(variant, variant): variant` |  | Implement mod (modulo) operation on variants.
`operator not(variant): variant` |  | Implement logical/binary not operation on variants
`operator or(variant, variant): variant` |  | Implement logical/binary or operation on variants
`operator shl(variant, variant): variant` |  | Implement binary shl operation on variants.
`operator shr(variant, variant): variant` |  | Implement binary shr operation on variants.
`operator xor(variant, variant): variant` |  | Implement logical/binary xor operation on variants
`Ord` |  | Return ordinal value of an ordinal type.
`Pack` |  | Create packed array from normal array
`Paramcount` |  | Return number of command-line parameters passed to the program.
`ParamStr` |  | Return value of a command-line argument.
`pi` |  | Return the value of PI.
`Pos` |  | Search for substring in a string.
`Power` |  | Raise float to integer power
`Pred` |  | Return previous element for an ordinal type.
`prefetch` |  | Prefetch a memory location
`ptr` |  | Combine segment and offset to pointer
`RaiseList` |  | List of currently raised exceptions.
`Random` |  | Generate random number
`Randomize` |  | Initialize random number generator
`Read` |  | Read from a text file into variable
`ReadBarrier` |  | Memory Read Barrier
`ReadDependencyBarrier` |  | Memory Read Dependency Barrier
`ReadLn` |  | Read from a text file into variable and goto next line
`ReadStr` |  | Read variables from a string
`ReadWriteBarrier` |  | Memory read/write barrier
`Real2Double` |  | Convert Turbo Pascal style real to double.
`ReAllocMem` |  | Re-allocate memory on the heap
`ReAllocMemory` |  | Alias for ReAllocMem
`ReleaseExceptionObject` |  | Decrease the reference count of the current exception object.
`Rename` |  | Rename file on disk
`Reset` |  | Open file for reading
`ResumeThread` |  | Resume a suspended thread.
`Rewrite` |  | Open file for writing
`rmdir` |  | Remove directory when empty.
`RolByte` |  | Rotate bits of a byte value to the left
`RolDWord` |  | Rotate bits of a DWord (cardinal) value to the left
`RolQWord` |  | Rotate bits of a QWord (64-bit) value to the left
`RolWord` |  | Rotate bits of a word value to the left
`RorByte` |  | Rotate bits of a byte value to the right
`RorDWord` |  | Rotate bits of a DWord (cardinal) value to the right
`RorQWord` |  | Rotate bits of a QWord (64-bit) value to the right
`RorWord` |  | Rotate bits of a word value to the right
`round` |  | Round floating point value to nearest integer number.
`RTLEventCreate` |  | Create a new RTL event
`RTLeventdestroy` |  | Destroy a RTL Event
`RTLeventResetEvent` |  | Reset an event
`RTLeventSetEvent` |  | Notify threads of the event.
`RTLeventsync` |  | Obsolete. Don't use
`RTLeventWaitFor` |  | Wait for an event.
`RunError` |  | Generate a run-time error.
`SarInt64` |  | 64-bit Shift Arithmetic Right
`SarLongint` |  | 32-bit Shift Arithmetic Right
`SarShortint` |  | 8-bit Shift Arithmetic Right
`SarSmallint` |  | 16-bit Shift Arithmetic Right
`Seek` |  | Set file position
`SeekEOF` |  | Set file position to end of file
`SeekEOLn` |  | Set file position to end of line
`Seg` |  | Return segment
`Setjmp` |  | Save current execution point.
`SetLength` |  | Set length of a string.
`SetMemoryManager` |  | Set a memory manager
`SetResourceManager` |  | Set the resource manager
`SetString` |  | Set length of a string and copy buffer.
`SetTextBuf` |  | Set size of text file internal buffer
`SetTextLineEnding` |  | Set the end-of-line character for the given text file.
`SetThreadManager` |  | Set the thread manager, optionally return the current thread manager.
`SetUnicodeStringManager` |  | Set the unicodestring manager
`SetVariantManager` |  | Set the current variant manager.
`SetWideStringManager` |  | Set the widestring manager
`ShortCompareText` |  | Compare 2 shortstrings
`sin` |  | Calculate sine of angle
`SizeOf` |  | Return size of a variable or type.
`SizeofResource` |  | Return the size of a particular resource
`Slice` |  | Return part of an array
`Space` |  | Return a string of spaces
`Sptr` |  | Return current stack pointer
`sqr` |  | Calculate the square of a value.
`sqrt` |  | Calculate the square root of a value
`Sseg` |  | Return stack segment register value.
`Str` |  | Convert a numerical value to a string.
`StringOfChar` |  | Return a string consisting of 1 character repeated N times.
`StringToPPChar` |  | Split string in list of null-terminated strings
`StringToUnicodeChar` |  | Convert an ansistring to a null-terminated array of unicode characters.
`StringToWideChar` |  | Convert a string to an array of widechars.
`strlen` |  | Length of a null-terminated string.
`strpas` |  | Convert a null-terminated string to a shortstring.
`Succ` |  | Return next element of ordinal type.
`SuspendThread` |  | Suspend a running thread.
`Swap` |  | Swap high and low bytes/words of a variable
`SwapEndian` |  | Swap endianness of the argument
`SysAllocMem` |  | System memory manager: Allocate memory
`SysAssert` |  | Standard Assert failure implementation
`SysBackTraceStr` |  | Format an address suitable for inclusion in a backtrace
`SysFlushStdIO` |  |
`SysFreemem` |  | System memory manager free routine.
`SysFreememSize` |  | System memory manager free routine.
`SysGetFPCHeapStatus` |  | Return the status of the FPC heapmanager
`SysGetHeapStatus` |  | System implementation of GetHeapStatus
`SysGetmem` |  | System memory manager memory allocator.
`SysInitExceptions` |  | Initialize exceptions.
`SysInitFPU` |  | Initialize the FPU
`SysInitStdIO` |  | Initialize standard input and output.
`SysMemSize` |  | System memory manager: free size.
`SysReAllocMem` |  | System memory manager: Reallocate memory
`SysResetFPU` |  | Reset the floating point unit.
`SysSetCtrlBreakHandler` |  | System CTRL-C handler
`SysTryResizeMem` |  | System memory manager: attempt to resize memory.
`ThreadGetPriority` |  | Return the priority of a thread.
`ThreadSetPriority` |  | Set the priority of a thread.
`ThreadSwitch` |  | Signal possibility of thread switch
`trunc` |  | Truncate a floating point value.
`Truncate` |  | Truncate the file at position
`TryEnterCriticalsection` |  | Try entering a critical section
`UCS4StringToUnicodeString` |  | Convert a UCS-4 encoded string to a unicode string
`UCS4StringToWideString` |  |
`Unassigned` |  | Unassigned variant.
`UnicodeCharLenToString` |  | Convert a memory buffer with unicode characters to an ansistring
`UnicodeCharLenToStrVar` |  | Convert a memory buffer with unicode characters to an ansistring
`UnicodeCharToString` |  | Convert unicode character to string
`UnicodeCharToStrVar` |  | Convert a null-terminated memory buffer with unicode characters to an ansistring
`UnicodeStringToUCS4String` |  | Convert a unicode string to a UCS-4 string.
`UnicodeToUtf8` |  |
`UniqueString` |  | Make sure reference count of string is 1
`UnlockResource` |  | Unlock a previously locked resource
`UnPack` |  | Create unpacked array from packed array
`upCase` |  | Convert a string to all uppercase.
`UTF8Decode` |  | Convert an UTF-8 encoded ansistring to a unicodestring
`UTF8Encode` |  | Convert a widestring or unicodestring to an UTF-8 encoded ansistring
`Utf8ToAnsi` |  | Convert a UTF-8 encoded unicode string to an ansistring
`Utf8ToUnicode` |  | Convert a buffer with UTF-8 characters to widestring characters
`Val` |  | Calculate numerical/enumerated value of a string.
`VarArrayGet` |  |
`VarArrayPut` |  | Put a value in a single cell of a variant array
`VarArrayRedim` |  | Redimension a variant array
`VarCast` |  | Cast a variant to a certain type
`WaitForThreadTerminate` |  | Wait for a thread to terminate.
`WideCharLenToString` |  | Convert a length-limited array of widechar to an ansistring
`WideCharLenToStrVar` |  | Convert a length-limited array of widechar to an ansistring
`WideCharToString` |  | Convert a null-terminated array of widechar to an ansistring
`WideCharToStrVar` |  | Convert a null-terminated array of widechar to an ansistring
`WideStringToUCS4String` |  | Convert a widestring to a UCS-4 encoded string.
`Write` |  | Write variable to a text file
`WriteBarrier` |  | Memory write barrier
`WriteLn` |  | Write variable to a text file and append newline
`WriteStr` |  | Write variables to a string

Documentation generated on: Feb 26 2014