Difference between revisions of "Unit GlobalConst"
From Ultibo.org
								
												
				| (170 intermediate revisions by the same user not shown) | |||
| Line 5: | Line 5: | ||
----  | ----  | ||
| − | ''  | + | '''Ultibo Global Constant Definitions unit'''  | 
=== Constants ===  | === Constants ===  | ||
| Line 12: | Line 12: | ||
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| − | <div style="font-size: 14px; padding-left: 12px;">'''Universal error   | + | <div style="font-size: 14px; padding-left: 12px;">'''Universal error''' <code> ERROR_* </code></div>  | 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
{| class="wikitable" style="font-size: 14px; background: white;"  | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| Line 22: | Line 22: | ||
| Success  | | Success  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-  | |-  | ||
| <code>ERROR_INVALID_FUNCTION = 1;</code>       | | <code>ERROR_INVALID_FUNCTION = 1;</code>       | ||
| Line 45: | Line 45: | ||
| Not enough storage is available to process this command  | | Not enough storage is available to process this command  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-  | |-  | ||
| <code>ERROR_INVALID_ACCESS = 12;</code>      | | <code>ERROR_INVALID_ACCESS = 12;</code>      | ||
| Line 80: | Line 80: | ||
| The device does not recognise the command  | | The device does not recognise the command  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-  | |-  | ||
| <code>ERROR_WRITE_FAULT = 29;</code>      | | <code>ERROR_WRITE_FAULT = 29;</code>      | ||
| Line 91: | Line 91: | ||
| The device has failed  | | The device has failed  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-  | |-  | ||
| <code>ERROR_NOT_SUPPORTED = 50;</code>      | | <code>ERROR_NOT_SUPPORTED = 50;</code>      | ||
| The request is not supported  | | The request is not supported  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-  | |-  | ||
| <code>ERROR_DEV_NOT_EXIST = 55;</code>      | | <code>ERROR_DEV_NOT_EXIST = 55;</code>      | ||
| The device does not exist  | | The device does not exist  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-  | |-  | ||
| <code>ERROR_BAD_DEV_TYPE = 66;</code>      | | <code>ERROR_BAD_DEV_TYPE = 66;</code>      | ||
| Invalid device type  | | Invalid device type  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-    | |-    | ||
| <code>ERROR_ALREADY_ASSIGNED = 85;</code>      | | <code>ERROR_ALREADY_ASSIGNED = 85;</code>      | ||
| Line 117: | Line 117: | ||
| Invalid parameter  | | Invalid parameter  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-     | |-     | ||
| <code>ERROR_SEM_IS_SET = 102;</code>     | | <code>ERROR_SEM_IS_SET = 102;</code>     | ||
| Line 134: | Line 134: | ||
| There are no child processes to wait for  | | There are no child processes to wait for  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-  | |-  | ||
| <code>ERROR_NOT_LOCKED = 158;</code>     | | <code>ERROR_NOT_LOCKED = 158;</code>     | ||
| The entry is not locked  | | The entry is not locked  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-  | |-  | ||
| <code>ERROR_LOCK_FAILED = 167;</code>     | | <code>ERROR_LOCK_FAILED = 167;</code>     | ||
| The lock operation failed  | | The lock operation failed  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-  | |-  | ||
| <code>ERROR_ALREADY_EXISTS = 183;</code>     | | <code>ERROR_ALREADY_EXISTS = 183;</code>     | ||
| The file or object already exists  | | The file or object already exists  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-  | |-  | ||
| <code>ERROR_ENVVAR_NOT_FOUND = 203;</code>     | | <code>ERROR_ENVVAR_NOT_FOUND = 203;</code>     | ||
| The environment variable could not be found  | | The environment variable could not be found  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-    | |-    | ||
| <code>ERROR_LOCKED = 212;</code>     | | <code>ERROR_LOCKED = 212;</code>     | ||
| The entry is already locked  | | The entry is already locked  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-  | |-  | ||
| <code>ERROR_MORE_DATA = 234;</code>     | | <code>ERROR_MORE_DATA = 234;</code>     | ||
| More data is available than the provided buffer  | | More data is available than the provided buffer  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-  | |-  | ||
| <code>ERROR_WAIT_TIMEOUT = 258;</code>     | | <code>ERROR_WAIT_TIMEOUT = 258;</code>     | ||
| Line 172: | Line 172: | ||
| No more items available  | | No more items available  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-    | |-    | ||
| <code>ERROR_NOT_OWNER = 288;</code>     | | <code>ERROR_NOT_OWNER = 288;</code>     | ||
| The current thread is not the owner  | | The current thread is not the owner  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-    | |-    | ||
| <code>ERROR_OPERATION_ABORTED = DWORD(995);</code>    | | <code>ERROR_OPERATION_ABORTED = DWORD(995);</code>    | ||
| Line 188: | Line 188: | ||
| Overlapped I/O operation is in progress  | | Overlapped I/O operation is in progress  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-    | |-    | ||
| <code>ERROR_CAN_NOT_COMPLETE = 1003;</code>    | | <code>ERROR_CAN_NOT_COMPLETE = 1003;</code>    | ||
| Cannot complete the function  | | Cannot complete the function  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-    | |-    | ||
| <code>ERROR_NOT_FOUND = 1168;</code>    | | <code>ERROR_NOT_FOUND = 1168;</code>    | ||
| The entry or device was not found  | | The entry or device was not found  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-    | |-    | ||
| <code>ERROR_INVALID_ACL = DWORD(1336);</code>     | | <code>ERROR_INVALID_ACL = DWORD(1336);</code>     | ||
| Line 204: | Line 204: | ||
|-  | |-  | ||
| <code>ERROR_INVALID_SID = DWORD(1337);</code>     | | <code>ERROR_INVALID_SID = DWORD(1337);</code>     | ||
| − | | The security   | + | | The security Id structure is invalid  | 
|-  | |-  | ||
| <code>ERROR_INVALID_SECURITY_DESCR = DWORD(1338);</code>     | | <code>ERROR_INVALID_SECURITY_DESCR = DWORD(1338);</code>     | ||
| The security descriptor structure is invalid  | | The security descriptor structure is invalid  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-    | |-    | ||
| <code>ERROR_TIMEOUT = 1460;</code>    | | <code>ERROR_TIMEOUT = 1460;</code>    | ||
| The operation returned because the timeout expired  | | The operation returned because the timeout expired  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-    | |-    | ||
| <code>ERROR_FUNCTION_FAILED = 1627;</code>    | | <code>ERROR_FUNCTION_FAILED = 1627;</code>    | ||
| The function call failed  | | The function call failed  | ||
|-  | |-  | ||
| − | |    | + | |colspan="2"|   | 
|-    | |-    | ||
| − | | ''Errors below here have no compatibility equivalent''  | + | |colspan="2"|''Errors below here have no compatibility equivalent''  | 
| − | + | ||
|-    | |-    | ||
| <code>ERROR_NOT_VALID = 1000001;</code>       | | <code>ERROR_NOT_VALID = 1000001;</code>       | ||
| Line 266: | Line 265: | ||
| The entry or operation has been cancelled  | | The entry or operation has been cancelled  | ||
|-  | |-  | ||
| − | |    | + | | <code>ERROR_NOT_EXACT = 1000015;</code>      | 
| + | | The result of the operation is not exact  | ||
| + | |-  | ||
| + | | <code>ERROR_ALREADY_OWNER = 1000016;</code>      | ||
| + | | The current thread is already the owner  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
|-  | |-  | ||
| <code>ERROR_UNKNOWN = $FFFFFFFF;</code>  | | <code>ERROR_UNKNOWN = $FFFFFFFF;</code>  | ||
| Line 274: | Line 279: | ||
</div></div>  | </div></div>  | ||
<br />  | <br />  | ||
| − | + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | |
| − | ''  | + | <div style="font-size: 14px; padding-left: 12px;">'''Universal value''' <code> INVALID_* </code></div>  | 
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>INVALID_HANDLE_VALUE = THandle(-1);</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>INVALID_FILE_SIZE = DWORD($FFFFFFFF);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>INVALID_SET_FILE_POINTER = DWORD(-1);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>INVALID_FILE_ATTRIBUTES = DWORD(-1);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''File position''' <code> FILE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>FILE_BEGIN = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>FILE_CURRENT = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_END = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''File open/create''' <code> CREATE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>CREATE_NEW = 1;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>CREATE_ALWAYS = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>OPEN_EXISTING = 3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>OPEN_ALWAYS = 4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>TRUNCATE_EXISTING = 5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''File creation flag''' <code> FILE_FLAG_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>FILE_FLAG_WRITE_THROUGH = DWORD($80000000);</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>FILE_FLAG_OVERLAPPED = $40000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_FLAG_NO_BUFFERING = $20000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_FLAG_RANDOM_ACCESS = $10000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_FLAG_SEQUENTIAL_SCAN = $08000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_FLAG_DELETE_ON_CLOSE = $04000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_FLAG_BACKUP_SEMANTICS = $02000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_FLAG_POSIX_SEMANTICS = $01000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_FLAG_OPEN_REPARSE_POINT = $00200000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_FLAG_OPEN_NO_RECALL = $00100000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_FLAG_FIRST_PIPE_INSTANCE = $00080000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''File attribute''' <code> FILE_ATTRIBUTE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>FILE_ATTRIBUTE_READONLY = $00000001;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>FILE_ATTRIBUTE_HIDDEN = $00000002;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_ATTRIBUTE_SYSTEM = $00000004;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_ATTRIBUTE_DIRECTORY = $00000010;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_ATTRIBUTE_ARCHIVE = $00000020;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_ATTRIBUTE_DEVICE = $00000040;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_ATTRIBUTE_NORMAL = $00000080;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_ATTRIBUTE_TEMPORARY = $00000100;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_ATTRIBUTE_SPARSE_FILE = $00000200;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_ATTRIBUTE_REPARSE_POINT = $00000400;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_ATTRIBUTE_COMPRESSED = $00000800;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_ATTRIBUTE_OFFLINE = $00001000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_ATTRIBUTE_NOT_CONTENT_INDEXED = $00002000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_ATTRIBUTE_ENCRYPTED = $00004000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Filesystem attribute''' <code> FS_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>FS_CASE_SENSITIVE_SEARCH = $00000001;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>FS_CASE_PRESERVED_NAMES = $00000002;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FS_UNICODE_ON_DISK = $00000004;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FS_PERSISTENT_ACLS = $00000008;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FS_FILE_COMPRESSION = $00000010;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FS_VOLUME_QUOTAS = $00000020;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FS_SUPPORTS_SPARSE_FILES = $00000040;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FS_SUPPORTS_REPARSE_POINTS = $00000080;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FS_SUPPORTS_REMOTE_STORAGE = $00000100;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FS_VOLUME_IS_COMPRESSED = $00008000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FS_SUPPORTS_OBJECT_IDS = $00010000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FS_SUPPORTS_ENCRYPTION = $00020000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FS_NAMED_STREAMS = $00040000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FS_READ_ONLY_VOLUME = $00080000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''File access''' <code> GENERIC_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>GENERIC_READ = DWORD($80000000);</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>GENERIC_WRITE = $40000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GENERIC_EXECUTE = $20000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GENERIC_ALL = $10000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''File share''' <code> FILE_SHARE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>FILE_SHARE_READ = $00000001;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>FILE_SHARE_WRITE = $00000002;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILE_SHARE_DELETE = $00000004;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Timeout''' <code> INFINITE =* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>INFINITE = LongWord(-1);</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />    | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''TLS''' <code> TLS_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>TLS_OUT_OF_INDEXES = DWORD($FFFFFFFF);</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Wait''' <code> WAIT_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>WAIT_OBJECT_0 = ERROR_SUCCESS + 0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>WAIT_ABANDONED = $00000080 + 0;</code>  | ||
| + | | STATUS_ABANDONED_WAIT_0  | ||
| + | |-  | ||
| + | | <code>WAIT_ABANDONED_0 = $00000080 + 0;</code>  | ||
| + | | STATUS_ABANDONED_WAIT_0  | ||
| + | |-  | ||
| + | | <code>WAIT_TIMEOUT = ERROR_WAIT_TIMEOUT;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>WAIT_FAILED = DWORD($FFFFFFFF);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>WAIT_IO_COMPLETION = $000000C0;</code>  | ||
| + | | STATUS_USER_APC  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>MAXIMUM_WAIT_OBJECTS = 64;</code>  | ||
| + | | Maximum number of wait objects  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />     | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Thread state''' <code> STILL_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>STILL_ACTIVE = ERROR_NO_MORE_ITEMS;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />     | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''TimeZone''' <code> TIME_ZONE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>TIME_ZONE_ID_INVALID = DWORD($FFFFFFFF);</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Universal key codes''' <code> KEY_CODE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | |colspan="2"|Keyboard key codes are based on the Unicode standard with each key code mapped to the code point for that character (See http://unicode.org or http://unicode-table.com)  | ||
| + | |-  | ||
| + | |colspan="2"|Keyboard keymaps map the scan code value to the key code value for the specific keyboard layout and include alternate mappings for Shift and AltGr  | ||
| + | |-  | ||
| + | |colspan="2"|Non character codes for keys like Home, End, Arrows, F1..F24, Shift, Caps Lock etc are mapped in the Unicode Private Use Area (E000-F8FF)  | ||
| + | |-  | ||
| + | |colspan="2"|These are the values reported in the KeyCode field of the TKeyboardData structure returned by the KeyboardRead function  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | |colspan="2"|''Control Characters (0000-001F)''  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_NONE = $0000;</code>  | ||
| + | | 0  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_BACKSPACE = $0008;</code>  | ||
| + | | 8  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_TAB = $0009;</code>  | ||
| + | | 9  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_ENTER = $000D;</code>  | ||
| + | | 13  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_ESCAPE = $001B;</code>  | ||
| + | | 27  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_DELETE = $007F;</code>  | ||
| + | | 127  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | |colspan="2"|''Basic Latin Characters (0020-007F)''  | ||
| + | |-  | ||
| + | |colspan="2"|''Punctuation''  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_SPACE = $0020;</code>  | ||
| + | | 32  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_EXCLAMATION = $0021;</code>  | ||
| + | | 33  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_QUOTATION = $0022;</code>  | ||
| + | | 34  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_NUMBER = $0023;</code>  | ||
| + | | 35 (Hash/Pound)  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_DOLLAR = $0024;</code>  | ||
| + | | 36  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_PERCENT = $0025;</code>  | ||
| + | | 37  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_AMPERSAND = $0026;</code>  | ||
| + | | 38  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_APOSTROPHE = $0027;</code>  | ||
| + | | 39  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LEFT_BRACKET = $0028;</code>  | ||
| + | | 40  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_RIGHT_BRACKET = $0029;</code>  | ||
| + | | 41  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_ASTERISK = $002A;</code>  | ||
| + | | 42  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_PLUS = $002B;</code>  | ||
| + | | 43  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_COMMA = $002C;</code>  | ||
| + | | 44  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_MINUS = $002D;</code>  | ||
| + | | 45  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_PERIOD = $002E;</code>  | ||
| + | | 46  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_SLASH = $002F;</code>  | ||
| + | | 47  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | |colspan="2"|''Numerals''  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_0 = $0030;</code>  | ||
| + | | 48  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_1 = $0031;</code>  | ||
| + | | 49  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_2 = $0032;</code>  | ||
| + | | 50  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_3 = $0033;</code>  | ||
| + | | 51  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_4 = $0034;</code>  | ||
| + | | 52  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_5 = $0035;</code>  | ||
| + | | 53  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_6 = $0036;</code>  | ||
| + | | 54  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_7 = $0037;</code>  | ||
| + | | 55  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_8 = $0038;</code>  | ||
| + | | 56  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_9 = $0039;</code>  | ||
| + | | 57  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | |colspan="2"|''Punctuation''  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_COLON = $003A;</code>  | ||
| + | | 58  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_SEMICOLON = $003B;</code>  | ||
| + | | 59  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LESSTHAN = $003C;</code>  | ||
| + | | 60  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_EQUALS = $003D;</code>  | ||
| + | | 61  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_GREATERTHAN = $003E;</code>  | ||
| + | | 62  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_QUESTION = $003F;</code>  | ||
| + | | 63  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_AT = $0040;</code>  | ||
| + | | 64  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | |colspan="2"|''Capital Characters''  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_A = $0041;</code>  | ||
| + | | 65  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_B = $0042;</code>  | ||
| + | | 66  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_C = $0043;</code>  | ||
| + | | 67  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_D = $0044;</code>  | ||
| + | | 68  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_E = $0045;</code>  | ||
| + | | 69  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_F = $0046;</code>  | ||
| + | | 70  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_G = $0047;</code>  | ||
| + | | 71  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_H = $0048;</code>  | ||
| + | | 72  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_I = $0049;</code>  | ||
| + | | 73  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_J = $004A;</code>  | ||
| + | | 74  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_K = $004B;</code>  | ||
| + | | 75  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_L = $004C;</code>  | ||
| + | | 76  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_M = $004D;</code>  | ||
| + | | 77  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_N = $004E;</code>  | ||
| + | | 78  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_O = $004F;</code>  | ||
| + | | 79  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_P = $0050;</code>  | ||
| + | | 80  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_Q = $0051;</code>  | ||
| + | | 81  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_R= $0052;</code>  | ||
| + | | 82  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_S = $0053;</code>  | ||
| + | | 83  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_T = $0054;</code>  | ||
| + | | 84  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_U = $0055;</code>  | ||
| + | | 85  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_V = $0056;</code>  | ||
| + | | 86  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_W = $0057;</code>  | ||
| + | | 87  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_X = $0058;</code>  | ||
| + | | 88  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_Y = $0059;</code>  | ||
| + | | 89  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_Z = $005A;</code>  | ||
| + | | 90  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | |colspan="2"|''Punctuation''  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LEFT_SQUARE = $005B;</code>  | ||
| + | | 91  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_BACKSLASH = $005C;</code>  | ||
| + | | 92  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_RIGHT_SQUARE = $005D;</code>  | ||
| + | | 93  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CARET = $005E;</code>  | ||
| + | | 94 (Circumflex)  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_UNDERSCORE = $005F;</code>  | ||
| + | | 95  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_GRAVE = $0060;</code>  | ||
| + | | 96  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | |colspan="2"|''Lowercase Characters''  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_A = $0061;</code>  | ||
| + | | 97  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_B = $0062;</code>  | ||
| + | | 98  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_C = $0063;</code>  | ||
| + | | 99  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_D = $0064;</code>  | ||
| + | | 100  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_E = $0065;</code>  | ||
| + | | 101  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F = $0066;</code>  | ||
| + | | 102  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_G = $0067;</code>  | ||
| + | | 103  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_H = $0068;</code>  | ||
| + | | 104  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_I = $0069;</code>  | ||
| + | | 105  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_J = $006A;</code>  | ||
| + | | 106  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_K = $006B;</code>  | ||
| + | | 107  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_L = $006C;</code>  | ||
| + | | 108  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_M = $006D;</code>  | ||
| + | | 109  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_N = $006E;</code>  | ||
| + | | 110  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_O = $006F;</code>  | ||
| + | | 111  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_P = $0070;</code>  | ||
| + | | 112  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_Q = $0071;</code>  | ||
| + | | 113  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_R = $0072;</code>  | ||
| + | | 114  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_S = $0073;</code>  | ||
| + | | 115  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_T = $0074;</code>  | ||
| + | | 116  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_U = $0075;</code>  | ||
| + | | 117  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_V = $0076;</code>  | ||
| + | | 118  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_W = $0077;</code>  | ||
| + | | 119  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_X = $0078;</code>  | ||
| + | | 120  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_Y = $0079;</code>  | ||
| + | | 121  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_Z = $007A;</code>  | ||
| + | | 122  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | |colspan="2"|''Punctuation''  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LEFT_BRACE = $007B;</code>  | ||
| + | | 123 (Curly Bracket)  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_PIPE = $007C;</code>  | ||
| + | | 124 (Vertical Bar)  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_RIGHT_BRACE = $007D;</code>  | ||
| + | | 125 (Curly Bracket)  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_TILDE = $007E;</code>  | ||
| + | | 126  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_DELETE </code>  | ||
| + | | (See above)  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | |colspan="2"|''Latin-1 Supplement Characters (0080-00FF)''  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_INVERTED_EXCLAMATION = $00A1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CENT = $00A2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_POUND = $00A3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CURRENCY = $00A4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_YEN = $00A5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_BROKEN_BAR = $00A6;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_SECTION = $00A7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_DIAERESIS = $00A8;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_COPYRIGHT = $00A9;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_FEMININE = $00AA;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LEFT_DOUBLE_ANGLE = $00AB;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_NOT = $00AC;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_REGISTERED = $00AE;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_MACRON = $00AF;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_DEGREE = $00B0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_PLUS_MINUS = $00B1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_SUPERSCRIPT_2 = $00B2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_SUPERSCRIPT_3 = $00B3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_ACUTE = $00B4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_MICRO = $00B5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_PILCROW = $00B6;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_MIDDLE_DOT = $00B7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CEDILLA = $00B8;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_SUPERSCRIPT_1 = $00B9;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_MASCULINE = $00BA;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_RIGHT_DOUBLE_ANGLE = $00BB;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_ONE_QUARTER = $00BC;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_ONE_HALF = $00BD;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_THREE_QUARTER = $00BE;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_INVERTED_QUESTION = $00BF;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_GRAVE_A = $00C0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_ACUTE_A = $00C1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_CIRCUMFLEX_A = $00C2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_TILDE_A = $00C3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_DIAERESIS_A = $00C4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_RING_A = $00C5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_AE = $00C6;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_CEDILLA_C = $00C7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_GRAVE_E = $00C8;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_ACUTE_E = $00C9;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_CIRCUMFLEX_E = $00CA;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_DIAERESIS_E  = $00CB;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_GRAVE_I = $00CC;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_ACUTE_I = $00CD;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_CIRCUMFLEX_I = $00CE;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_DIAERESIS_I = $00CF;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_ETH = $00D0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_TILDE_N = $00D1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_GRAVE_O = $00D2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_ACUTE_O = $00D3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_CIRCUMFLEX_O = $00D4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_TILDE_O = $00D5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_DIAERESIS_O = $00D6;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_MULTIPLY = $00D7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_STROKE_O = $00D8;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_GRAVE_U = $00D9;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_ACUTE_U = $00DA;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_CIRCUMFLEX_U = $00DB;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_DIAERESIS_U = $00DC;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_ACUTE_Y = $00DD;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPITAL_THORN = $00DE;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_SHARP_S = $00DF;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_GRAVE_A = $00E0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_ACUTE_A = $00E1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CIRCUMFLEX_A = $00E2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_TILDE_A = $00E3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_DIAERESIS_A = $00E4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_RING_A = $00E5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_AE = $00E6;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CEDILLA_C = $00E7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_GRAVE_E = $00E8;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_ACUTE_E = $00E9;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CIRCUMFLEX_E = $00EA;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_DIAERESIS_E = $00EB;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_GRAVE_I = $00EC;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_ACUTE_I = $00ED;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CIRCUMFLEX_I = $00EE;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_DIAERESIS_I = $00EF;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_ETH = $00F0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_TILDE_N = $00F1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_GRAVE_O = $00F2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_ACUTE_O = $00F3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CIRCUMFLEX_O = $00F4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_TILDE_O = $00F5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_DIAERESIS_O = $00F6;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_DIVISION = $00F7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_STROKE_O = $00F8;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_GRAVE_U = $00F9;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_ACUTE_U = $00FA;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CIRCUMFLEX_U = $00FB;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_DIAERESIS_U = $00FC;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_ACUTE_Y = $00FD;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_THORN  = $00FE;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_DIAERESIS_Y = $00FF;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | |colspan="2"|''General Punctuation (2000-206F)''  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LEFT_QUOTE = $2018;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_RIGHT_QUOTE = $2019;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | |colspan="2"|''Currency Symbols (20A0-20CF)''  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_EURO = $20AC;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | |colspan="2"|''Private Area (E000-F8FF)''  | ||
| + | |-  | ||
| + | |colspan="2"|''Non Character Codes''  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CAPSLOCK = $E000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F1 = $E001;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F2 = $E002;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F3 = $E003;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F4 = $E004;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F5  = $E005;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F6  = $E006; </code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F7 = $E007;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F8 = $E008;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F9 = $E009;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F10 = $E00A;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F11 = $E00B;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F12 = $E00C;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_PRINTSCREEN = $E00D;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_SCROLLLOCK = $E00E;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_PAUSE = $E00F;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_INSERT = $E010;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_HOME = $E011;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_PAGEUP = $E012;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_END = $E013;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_PAGEDN = $E014;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_RIGHT_ARROW = $E015;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LEFT_ARROW = $E016;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_DOWN_ARROW = $E017;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_UP_ARROW = $E018;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_NUMLOCK = $E019;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_APPLICATION = $E01A;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_POWER = $E01B;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F13 = $E01C;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F14 = $E01D;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F15 = $E01E;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F16 = $E01F;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F17 = $E020;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F18 = $E021;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F19 = $E022;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F20 = $E023;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F21 = $E024;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F22 = $E025;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F23 = $E026;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_F24 = $E027;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_EXECUTE = $E028;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_HELP = $E029;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_MENU = $E02A;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_SELECT = $E02B;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_STOP = $E02C;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_AGAIN = $E02D;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_UNDO = $E02E;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CUT = $E02F;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_COPY = $E030;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_PASTE = $E031;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_FIND = $E032;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_MUTE = $E033;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_VOLUMEUP = $E034;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_VOLUMEDOWN = $E035;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LOCKING_CAPSLOCK = $E036;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LOCKING_NUMLOCK = $E037;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LOCKING_SCROLLLOCK = $E038;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_INTERNATIONAL1 = $E039;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_INTERNATIONAL2 = $E03A;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_INTERNATIONAL3 = $E03B;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_INTERNATIONAL4 = $E03C;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_INTERNATIONAL5 = $E03D;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_INTERNATIONAL6 = $E03E;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_INTERNATIONAL7 = $E03F;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_INTERNATIONAL8 = $E040;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_INTERNATIONAL9 = $E041;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LANG1 = $E042;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LANG2 = $E043;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LANG3 = $E044;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LANG4 = $E045;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LANG5 = $E046;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LANG6 = $E047;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LANG7 = $E048;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LANG8 = $E049;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_LANG9 = $E04A;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_ALT_ERASE = $E04B;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_SYSREQ = $E04C;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CANCEL = $E04D;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CLEAR = $E04E;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_PRIOR = $E04F;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_RETURN = $E050;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_SEPARATOR = $E051;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_OUT = $E052;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_OPER = $E053;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CLEAR_AGAIN = $E054;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CRSEL_PROPS = $E055;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_EXSEL = $E056;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_00 = $E057;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_000 = $E058;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_THOUSANDS_SEPARATOR = $E059;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_DECIMAL_SEPARATOR = $E05A;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CURRENCY_UNIT = $E05B;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CURRENCY_SUBUNIT = $E05C;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_XOR = $E05D;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_MEM_STORE = $E05E;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_MEM_RECALL = $E05F;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_MEM_CLEAR = $E060;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_MEM_ADD = $E061;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_MEM_SUBTRACT = $E062;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_MEM_MULTIPLY = $E063;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_MEM_DIVIDE = $E064;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CLEAR_ENTRY = $E065;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_BINARY = $E066;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_OCTAL = $E067;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_DECIMAL = $E068;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_HEX = $E069;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CTRL = $E06A;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_SHIFT = $E06B;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_ALT = $E06C;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_GUI = $E06D;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_DOUBLE_AMPERSAND = $E06E;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_DOUBLE_PIPE = $E06F;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>KEY_CODE_CENTER = $E070;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>KEY_CODE_TRANSLATE_START = $0080;</code>  | ||
| + | | Key codes below this are direct characters in all code pages  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_PRIVATE_START = $E000;</code>  | ||
| + | | Key codes in this range are private area mappings for non character keys  | ||
| + | |-  | ||
| + | | <code>KEY_CODE_PRIVATE_END = $F8FF;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Universal scan codes''' <code> SCAN_CODE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | |colspan="2"|Keyboard scan codes are based on the USB HID Usages (See Section 10 of the Universal Serial Bus HID Usage Tables v1.12)  | ||
| + | |-  | ||
| + | |colspan="2"|These are the values reported in the ScanCode field of the TKeyboardData structure returned by the KeyboardRead function  | ||
| + | |-  | ||
| + | |colspan="2"|Any keyboard driver supporting legacy keyboards (eg PC/AT or PS/2) should translate the reported codes to be compatible with this set  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_NONE = 0;</code>  | ||
| + | | Reserved (no event indicated)  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_ROLLOVER = 1;</code>  | ||
| + | | Keyboard ErrorRollOver  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_POSTFAIL = 2;</code>  | ||
| + | | Keyboard POSTFail  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_ERROR = 3;</code>  | ||
| + | | Keyboard ErrorUndefined  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_A = 4;</code>  | ||
| + | | Keyboard a or A  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_B = 5;</code>  | ||
| + | | Keyboard b or B  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_C = 6;</code>  | ||
| + | | Keyboard c or C  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_D = 7;</code>  | ||
| + | | Keyboard d or D  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_E = 8;</code>  | ||
| + | | Keyboard e or E  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F = 9;</code>  | ||
| + | | Keyboard f or F  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_G = 10;</code>  | ||
| + | | Keyboard g or G  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_H = 11;</code>  | ||
| + | | Keyboard h or H  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_I = 12;</code>  | ||
| + | | Keyboard i or I  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_J = 13;</code>  | ||
| + | | Keyboard j or J  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_K = 14;</code>  | ||
| + | | Keyboard k or K  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_L = 15;</code>  | ||
| + | | Keyboard l or L  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_M = 16;</code>  | ||
| + | | Keyboard m or M  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_N = 17;</code>  | ||
| + | | Keyboard n or N  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_O = 18;</code>  | ||
| + | | Keyboard o or O  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_P = 19;</code>  | ||
| + | | Keyboard p or P  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_Q = 20;</code>  | ||
| + | | Keyboard q or Q  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_R = 21;</code>  | ||
| + | | Keyboard r or R  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_S = 22;</code>  | ||
| + | | Keyboard s or S  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_T = 23;</code>  | ||
| + | | Keyboard t or T  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_U = 24;</code>  | ||
| + | | Keyboard u or U  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_V = 25;</code>  | ||
| + | | Keyboard v or V  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_W = 26;</code>  | ||
| + | | Keyboard w or W  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_X = 27;</code>  | ||
| + | | Keyboard x or X  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_Y = 28;</code>  | ||
| + | | Keyboard y or Y  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_Z = 29;</code>  | ||
| + | | Keyboard z or Z  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_1 = 30;</code>  | ||
| + | | Keyboard 1 or !  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_2 = 31;</code>  | ||
| + | | Keyboard 2 or @  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_3 = 32;</code>  | ||
| + | | Keyboard 3 or #  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_4 = 33;</code>  | ||
| + | | Keyboard 4 or $  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_5 = 34;</code>  | ||
| + | | Keyboard 5 or %  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_6 = 35;</code>  | ||
| + | | Keyboard 6 or ^  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_7 = 36;</code>  | ||
| + | | Keyboard 7 or &  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_8 = 37;</code>  | ||
| + | | Keyboard 8 or *  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_9 = 38;</code>  | ||
| + | | Keyboard 9 or (  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_0 = 39;</code>  | ||
| + | | Keyboard 0 or )  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_ENTER = 40;</code>  | ||
| + | | Keyboard Enter  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_ESCAPE = 41;</code>  | ||
| + | | Keyboard Escape  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_BACKSPACE = 42;</code>  | ||
| + | | Keyboard Backspace  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_TAB = 43;</code>  | ||
| + | | Keyboard Tab  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_SPACE = 44;</code>  | ||
| + | | Keyboard Spacebar  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_MINUS = 45;</code>  | ||
| + | | Keyboard - or _  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_EQUALS = 46;</code>  | ||
| + | | Keyboard = or +  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LEFT_SQUARE = 47;</code>  | ||
| + | | Keyboard [ or Left Brace  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_RIGHT_SQUARE = 48;</code>  | ||
| + | | Keyboard ] or Right Brace  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_BACKSLASH = 49;</code>  | ||
| + | | Keyboard \ or Keypad Pipe  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_NONUS_NUMBER = 50;</code>  | ||
| + | | Keyboard Non-US # and ~  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_SEMICOLON = 51;</code>  | ||
| + | | Keyboard ; or :  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_APOSTROPHE = 52;</code>  | ||
| + | | Keyboard ' or "  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_GRAVE = 53;</code>  | ||
| + | | Keyboard ` or ~  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_COMMA = 54;</code>  | ||
| + | | Keyboard , or <  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_PERIOD = 55;</code>  | ||
| + | | Keyboard . or >  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_SLASH = 56;</code>  | ||
| + | | Keyboard / or ?  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_CAPSLOCK = 57;</code>  | ||
| + | | Keyboard Caps Lock  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F1 = 58;</code>  | ||
| + | | Keyboard F1  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F2 = 59;</code>  | ||
| + | | Keyboard F2  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F3 = 60;</code>  | ||
| + | | Keyboard F3  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F4 = 61;</code>  | ||
| + | | Keyboard F4  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F5 = 62;</code>  | ||
| + | | Keyboard F5  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F6 = 63;</code>  | ||
| + | | Keyboard F6  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F7 = 64;</code>  | ||
| + | | Keyboard F7  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F8 = 65;</code>  | ||
| + | | Keyboard F8  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F9 = 66;</code>  | ||
| + | | Keyboard F9  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F10 = 67;</code>  | ||
| + | | Keyboard F10  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F11 = 68;</code>  | ||
| + | | Keyboard F11  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F12 = 69;</code>  | ||
| + | | Keyboard F12  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_PRINTSCREEN = 70;</code>  | ||
| + | | Keyboard Print Screen  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_SCROLLLOCK = 71;</code>  | ||
| + | | Keyboard Scroll Lock  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_PAUSE = 72;</code>  | ||
| + | | Keyboard Pause  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_INSERT = 73;</code>  | ||
| + | | Keyboard Insert  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_HOME = 74;</code>  | ||
| + | | Keyboard Home  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_PAGEUP = 75;</code>  | ||
| + | | Keyboard PageUp  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_DELETE = 76;</code>  | ||
| + | | Keyboard Delete  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_END = 77;</code>  | ||
| + | | Keyboard End  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_PAGEDN = 78;</code>  | ||
| + | | Keyboard PageDn  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_RIGHT_ARROW = 79;</code>  | ||
| + | | Keyboard Right Arrow  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LEFT_ARROW = 80;</code>  | ||
| + | | Keyboard Left Arrow  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_DOWN_ARROW = 81;</code>  | ||
| + | | Keyboard Down Arrow  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_UP_ARROW = 82;</code>  | ||
| + | | Keyboard Up Arrow  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_NUMLOCK = 83;</code>  | ||
| + | | Keyboard Num Lock  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_SLASH = 84;</code>  | ||
| + | | Keypad /  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_ASTERISK = 85;</code>  | ||
| + | | Keypad *  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_MINUS = 86;</code>  | ||
| + | | Keypad -  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_PLUS = 87;</code>  | ||
| + | | Keypad +  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_ENTER = 88;</code>  | ||
| + | | Keypad Enter  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_1 = 89;</code>  | ||
| + | | Keypad 1 and End  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_2 = 90;</code>  | ||
| + | | Keypad 2 and Down Arrow  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_3 = 91;</code>  | ||
| + | | Keypad 3 and PageDn  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_4 = 92;</code>  | ||
| + | | Keypad 4 and Left Arrow  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_5 = 93;</code>  | ||
| + | | Keypad 5 and Center  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_6 = 94;</code>  | ||
| + | | Keypad 6 and Right Arrow  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_7 = 95;</code>  | ||
| + | | Keypad 7 and Home  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_8 = 96;</code>  | ||
| + | | Keypad 8 and Up Arrow  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_9 = 97;</code>  | ||
| + | | Keypad 9 and PageUp  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_0 = 98;</code>  | ||
| + | | Keypad 0 and Insert  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_PERIOD = 99;</code>  | ||
| + | | Keypad . and Delete  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_NONUS_BACKSLASH = 100;</code>  | ||
| + | | Keyboard Non-US \ and Keypad Pipe  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_APPLICATION = 101;</code>  | ||
| + | | Keyboard Application  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_POWER = 102;</code>  | ||
| + | | Keyboard Power  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_EQUALS = 103;</code>  | ||
| + | | Keypad =  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F13 = 104;</code>  | ||
| + | | Keyboard F13  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F14 = 105;</code>  | ||
| + | | Keyboard F14  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F15 = 106;</code>  | ||
| + | | Keyboard F15  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F16 = 107;</code>  | ||
| + | | Keyboard F16  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F17 = 108;</code>  | ||
| + | | Keyboard F17  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F18 = 109;</code>  | ||
| + | | Keyboard F18  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F19 = 110;</code>  | ||
| + | | Keyboard F19  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F20 = 111;</code>  | ||
| + | | Keyboard F20  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F21 = 112;</code>  | ||
| + | | Keyboard F21  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F22 = 113;</code>  | ||
| + | | Keyboard F22  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F23 = 114;</code>  | ||
| + | | Keyboard F23  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_F24 = 115;</code>  | ||
| + | | Keyboard F24  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_EXECUTE = 116;</code>  | ||
| + | | Keyboard Execute  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_HELP = 117;</code>  | ||
| + | | Keyboard Help  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_MENU = 118;</code>  | ||
| + | | Keyboard Menu  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_SELECT = 119;</code>  | ||
| + | | Keyboard Select  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_STOP = 120;</code>  | ||
| + | | Keyboard Stop  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_AGAIN = 121;</code>  | ||
| + | | Keyboard Again  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_UNDO = 122;</code>  | ||
| + | | Keyboard Undo  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_CUT = 123;</code>  | ||
| + | | Keyboard Cut  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_COPY = 124;</code>  | ||
| + | | Keyboard Copy  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_PASTE = 125;</code>  | ||
| + | | Keyboard Paste  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_FIND = 126;</code>  | ||
| + | | Keyboard Find  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_MUTE = 127;</code>  | ||
| + | | Keyboard Mute  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_VOLUMEUP = 128;</code>  | ||
| + | | Keyboard Volume Up  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_VOLUMEDN = 129;</code>  | ||
| + | | Keyboard Volume Down  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LOCKING_CAPSLOCK = 130;</code>  | ||
| + | | Keyboard Locking Caps Lock  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LOCKING_NUMLOCK = 131;</code>  | ||
| + | | Keyboard Locking Num Lock  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LOCKING_SCROLLLOCK = 132;</code>  | ||
| + | | Keyboard Locking Scroll Lock  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_COMMA = 133;</code>  | ||
| + | | Keypad Comma  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_EQUAL_SIGN = 134;</code>  | ||
| + | | Keypad Equal Sign  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_INTERNATIONAL1 = 135;</code>  | ||
| + | | Keyboard International1  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_INTERNATIONAL2 = 136;</code>  | ||
| + | | Keyboard International2  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_INTERNATIONAL3 = 137;</code>  | ||
| + | | Keyboard International3  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_INTERNATIONAL4 = 138;</code>  | ||
| + | | Keyboard International4  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_INTERNATIONAL5 = 139;</code>  | ||
| + | | Keyboard International5  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_INTERNATIONAL6 = 140;</code>  | ||
| + | | Keyboard International6  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_INTERNATIONAL7 = 141;</code>  | ||
| + | | Keyboard International7  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_INTERNATIONAL8 = 142;</code>  | ||
| + | | Keyboard International8  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_INTERNATIONAL9 = 143;</code>  | ||
| + | | Keyboard International9  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LANG1 = 144;</code>  | ||
| + | | Keyboard LANG1  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LANG2 = 145;</code>  | ||
| + | | Keyboard LANG2  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LANG3 = 146;</code>  | ||
| + | | Keyboard LANG3  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LANG4 = 147;</code>  | ||
| + | | Keyboard LANG4  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LANG5 = 148;</code>  | ||
| + | | Keyboard LANG5  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LANG6 = 149;</code>  | ||
| + | | Keyboard LANG6  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LANG7 = 150;</code>  | ||
| + | | Keyboard LANG7  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LANG8 = 151;</code>  | ||
| + | | Keyboard LANG8  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LANG9 = 152;</code>  | ||
| + | | Keyboard LANG9  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_ALT_ERASE = 153;</code>  | ||
| + | | Keyboard Alternate Erase  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_SYSREQ = 154;</code>  | ||
| + | | Keyboard SysReq/Attention  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_CANCEL = 155;</code>  | ||
| + | | Keyboard Cancel  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_CLEAR = 156;</code>  | ||
| + | | Keyboard Clear  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_PRIOR = 157;</code>  | ||
| + | | Keyboard Prior  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_RETURN = 158;</code>  | ||
| + | | Keyboard Return  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_SEPARATOR = 159;</code>  | ||
| + | | Keyboard Separator  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_OUT = 160;</code>  | ||
| + | | Keyboard Out  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_OPER = 161;</code>  | ||
| + | | Keyboard Oper  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_CLEAR_AGAIN = 162;</code>  | ||
| + | | Keyboard Clear/Again  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_CRSEL_PROPS = 163;</code>  | ||
| + | | Keyboard CrSel/Props  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_EXSEL = 164;</code>  | ||
| + | | Keyboard ExSel  | ||
| + | |-  | ||
| + | |colspan="2"|''Codes 165 to 175 Reserved''  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_00 = 176;</code>  | ||
| + | | Keypad 00  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_000 = 177;</code>  | ||
| + | | Keypad 000  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_THOUSANDS_SEPARATOR = 178;</code>  | ||
| + | | Thousands Separator  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_DECIMAL_SEPARATOR = 179;</code>  | ||
| + | | Decimal Separator  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_CURRENCY_UNIT = 180;</code>  | ||
| + | | Currency Unit  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_CURRENCY_SUBUNIT = 181;</code>  | ||
| + | | Currenct Sub-unit  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_LEFT_BRACKET = 182;</code>  | ||
| + | | Keypad (  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_RIGHT_BRACKET = 183;</code>  | ||
| + | | Keypad )  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_LEFT_BRACE = 184;</code>  | ||
| + | | Keypad Left Brace  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_RIGHT_BRACE = 185;</code>  | ||
| + | | Keypad Right Brace  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_TAB = 186;</code>  | ||
| + | | Keypad Tab  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_BACKSPACE = 187;</code>  | ||
| + | | Keypad Backspace  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_A = 188;</code>  | ||
| + | | Keypad A  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_B = 189;</code>  | ||
| + | | Keypad B  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_C = 190;</code>  | ||
| + | | Keypad C  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_D = 191;</code>  | ||
| + | | Keypad D  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_E = 192;</code>  | ||
| + | | Keypad E  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_F = 193;</code>  | ||
| + | | Keypad F  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_XOR = 194;</code>  | ||
| + | | Keypad XOR  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_CARET = 195;</code>  | ||
| + | | Keypad ^  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_PERCENT = 196;</code>  | ||
| + | | Keypad %  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_LESSTHAN = 197;</code>  | ||
| + | | Keypad <  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_GREATERTHAN = 198;</code>  | ||
| + | | Keypad >  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_AMPERSAND = 199;</code>  | ||
| + | | Keypad &  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_DOUBLE_AMPERSAND = 200;</code>  | ||
| + | | Keypad &&  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_PIPE = 201;</code>  | ||
| + | | Keypad Pipe  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_DOUBLE_PIPE = 202;</code>  | ||
| + | | Keypad Double Pipe  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_COLON = 203;</code>  | ||
| + | | Keypad :	  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_NUMBER = 204;</code>  | ||
| + | | Keypad #  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_SPACE = 205;</code>  | ||
| + | | Keypad Space  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_AT = 206;</code>  | ||
| + | | Keypad @  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_EXCLAMATION = 207;</code>  | ||
| + | | Keypad !  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_MEM_STORE = 208;</code>  | ||
| + | | Keypad Memory Store  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_MEM_RECALL = 209;</code>  | ||
| + | | Keypad Memory Recall  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_MEM_CLEAR = 210;</code>  | ||
| + | | Keypad Memory Clear  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_MEM_ADD = 211;</code>  | ||
| + | | Keypad Memory Add  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_MEM_SUB = 212;</code>  | ||
| + | | Keypad Memory Subtract  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_MEM_MULTIPLY = 213;</code>  | ||
| + | | Keypad Memory Multiply  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_MEM_DIVIDE = 214;</code>  | ||
| + | | Keypad Memory Divide  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_PLUS_MINUS = 215;</code>  | ||
| + | | Keypad +/-  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_CLEAR = 216;</code>  | ||
| + | | Keypad Clear  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_CLEAR_ENTRY = 217;</code>  | ||
| + | | Keypad Clear Entry  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_BINARY = 218;</code>  | ||
| + | | Keypad Binary  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_OCTAL = 219;</code>  | ||
| + | | Keypad Octal  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_DECIMAL = 220;</code>  | ||
| + | | Keypad Decimal  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_HEX = 221;</code>  | ||
| + | | Keypad Hexadecimal  | ||
| + | |-  | ||
| + | |colspan="2"|''Codes 222 to 223 Reserved''  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LEFT_CTRL = 224;</code>  | ||
| + | | Keyboard LeftControl  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LEFT_SHIFT = 225;</code>  | ||
| + | | Keyboard LeftShift  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LEFT_ALT = 226;</code>  | ||
| + | | Keyboard LeftAlt  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LEFT_GUI = 227;</code>  | ||
| + | | Keyboard Left GUI  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_RIGHT_CTRL = 228;</code>  | ||
| + | | Keyboard RightControl  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_RIGHT_SHIFT = 229;</code>  | ||
| + | | Keyboard RightShift  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_RIGHT_ALT = 230;</code>  | ||
| + | | Keyboard RightAlt  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_RIGHT_GUI = 231;</code>  | ||
| + | | Keyboard Right GUI  | ||
| + | |-  | ||
| + | |colspan="2"|''Codes 232 to 65535 Reserved''  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_RESERVED_255 = 255;</code>  | ||
| + | | Reserved  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | |colspan="2"|''Alternate names for above''  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_EXCLAMATION = 30;</code>  | ||
| + | | Keyboard 1 or !  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_AT = 31;</code>  | ||
| + | | Keyboard 2 or @  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_NUMBER = 32;</code>  | ||
| + | | Keyboard 3 or #  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_CURRENCY = 33;</code>  | ||
| + | | Keyboard 4 or $  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_PERCENT = 34;</code>  | ||
| + | | Keyboard 5 or %  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_CARET = 35;</code>  | ||
| + | | Keyboard 6 or ^  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_AMPERSAND = 36;</code>  | ||
| + | | Keyboard 7 or &  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_ASTERISK = 37;</code>  | ||
| + | | Keyboard 8 or *  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LEFT_BRACKET = 38;</code>  | ||
| + | | Keyboard 9 or (  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_RIGHT_BRACKET = 39;</code>  | ||
| + | | Keyboard 0 or )  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_DASH = 45;</code>  | ||
| + | | Keyboard - or _  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_UNDERSCORE = 45;</code>  | ||
| + | | Keyboard - or _  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_PLUS = 46;</code>  | ||
| + | | Keyboard = or +  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LEFT_BRACE = 47;</code>  | ||
| + | | Keyboard [ or Left Brace  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_RIGHT_BRACE = 48;</code>  | ||
| + | | Keyboard ] or Right Brace  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_PIPE = 49;</code>  | ||
| + | | Keyboard \ or Keypad Pipe  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_NONUS_TILDE = 50;</code>  | ||
| + | | Keyboard Non-US # and ~  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_COLON = 51;</code>  | ||
| + | | Keyboard ; or :  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_QUOTATION = 52;</code>  | ||
| + | | Keyboard ' or "  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_TILDE = 53;</code>  | ||
| + | | Keyboard ` or ~  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_LESSTHAN = 54;</code>  | ||
| + | | Keyboard , or <  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_GREATERTHAN = 55;</code>  | ||
| + | | Keyboard . or >  | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_QUESTION = 56;</code>  | ||
| + | | Keyboard / or ?  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_ALTGR = SCAN_CODE_RIGHT_ALT;</code>  | ||
| + | | Keyboard RightAlt  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_FIRST = SCAN_CODE_NUMLOCK;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SCAN_CODE_KEYPAD_LAST = SCAN_CODE_KEYPAD_PERIOD;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Universal color''' <code> COLOR_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | |colspan="2"|Basic 32 bit RGB colors (8 bit Transparency, 8 bit Red, 8 bit Green, 8 bit Blue)  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>COLOR_NONE = $00000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_BLACK = $FF000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_RED = $FFFF0000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_ORANGE = $FFFF8500;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_LEAFGREEN = $FF009900;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_GREEN = $FF00FF00;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_YELLOW = $FFFFFF00;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_DARKGREEN = $FF254117;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_DARKGRAY = $FF595959;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_BROWN = $FF6F4E37;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_INDIGO = $FF2E0854;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_RASPBERRY = $FFE30B5C;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_GRAY = $FF808080;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_PURPLE = $FF4B0082;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_PINK = $FFFF0090;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_DARKBLUE = $FF0000A0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_SILVER = $FFC0C0C0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_BLUEIVY = $FF3090C7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_MIDGRAY = $FFE0E0E0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_LIGHTGRAY = $FFF7F7F7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_BLUE = $FF0000FF;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_MAGENTA = $FFFF00FF;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_CYAN = $FF00FFFF;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>COLOR_WHITE = $FFFFFFFF;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | |colspan="2"|''Color format constants''  | ||
| + | |-  | ||
| + | |colspan="2"|See: https://en.wikipedia.org/wiki/Color_depth and https://en.wikipedia.org/wiki/RGBA_color_space  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_ARGB32 = 0;</code>  | ||
| + | | 32 bits per pixel Alpha/Red/Green/Blue (ARGB8888)  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_ABGR32 = 1;</code>  | ||
| + | | 32 bits per pixel Alpha/Blue/Green/Red (ABGR8888)  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_RGBA32 = 2;</code>  | ||
| + | | 32 bits per pixel Red/Green/Blue/Alpha (RGBA8888)  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_BGRA32 = 3;</code>  | ||
| + | | 32 bits per pixel Blue/Green/Red/Alpha (BGRA8888)  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_URGB32 = 4;</code>  | ||
| + | | 32 bits per pixel Unused/Red/Green/Blue (URGB8888)  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_UBGR32 = 5;</code>  | ||
| + | | 32 bits per pixel Unused/Blue/Green/Red (UBGR8888)  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_RGBU32 = 6;</code>  | ||
| + | | 32 bits per pixel Red/Green/Blue/Unused (RGBU8888)  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_BGRU32 = 7;</code>  | ||
| + | | 32 bits per pixel Blue/Green/Red/Unused (BGRU8888)  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_RGB24 = 8;</code>  | ||
| + | | 24 bits per pixel Red/Green/Blue (RGB888)  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_BGR24 = 9;</code>  | ||
| + | | 24 bits per pixel Blue/Green/Red (BGR888)  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_RGB16 = 10;</code>  | ||
| + | | 16 bits per pixel Red/Green/Blue (RGB565)  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_BGR16 = 11;</code>  | ||
| + | | 16 bits per pixel Blue/Green/Red (BGR565)  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_RGB15 = 12;</code>  | ||
| + | | 15 bits per pixel Red/Green/Blue (RGB555)  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_BGR15 = 13;</code>  | ||
| + | | 15 bits per pixel Blue/Green/Red (BGR555)  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_RGB8 = 14;</code>  | ||
| + | | 8 bits per pixel Red/Green/Blue (RGB332)  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_BGR8 = 15;</code>  | ||
| + | | 8 bits per pixel Blue/Green/Red (BGR233)  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_GRAY16 = 16;</code>  | ||
| + | | 16 bits per pixel grayscale  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_GRAY8 = 17;</code>  | ||
| + | | 8 bits per pixel grayscale  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_INDEX16 = 18;</code>  | ||
| + | | 16 bits per pixel palette index  | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_INDEX8 = 19;</code>  | ||
| + | | 8 bits per pixel palette index  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_MAX = 19;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_DEFAULT = COLOR_FORMAT_ARGB32;</code>  | ||
| + | | The default color format (Used for the COLOR_* constants above)  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>COLOR_FORMAT_UNKNOWN = LongWord(-1);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />   | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Universal size''' <code> SIZE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | |colspan="2"|From /include/linux/sizes.h  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>SIZE_0 = $00000000;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>SIZE_1 = $00000001;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_2 = $00000002;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_4 = $00000004;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_8 = $00000008;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_16 = $00000010;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_32 = $00000020;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_64 = $00000040;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_128 = $00000080;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_256 = $00000100;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_512 = $00000200;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>SIZE_1K = $00000400;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_2K = $00000800;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_4K = $00001000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_8K = $00002000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_16K = $00004000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_32K = $00008000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_64K = $00010000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_128K = $00020000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_256K = $00040000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_512K = $00080000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>SIZE_1M = $00100000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_2M = $00200000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_4M = $00400000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_8M = $00800000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_16M = $01000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_32M = $02000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_64M = $04000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_128M = $08000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_256M = $10000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_512M = $20000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>SIZE_1G = $40000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_2G = $80000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>SIZE_4G = $100000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SIZE_8G = $200000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Universal frequency''' <code> FREQUENCY_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>FREQUENCY_KHZ = 1000;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>FREQUENCY_MHZ = 1000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FREQUENCY_GHZ = 1000000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />   | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Universal bit''' <code> BITS_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>BITS_PER_BYTE = 8;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>BITS_PER_WORD = 16;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>BITS_PER_LONG = 32;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>BITS_PER_LONG_LONG = 64;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Universal max''' <code> MAX_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>MAX_BYTE = Byte(-1);</code>  | ||
| + | | style="width: 50%;"|0xFF  | ||
| + | |-  | ||
| + | | <code>MAX_WORD = Word(-1);</code>  | ||
| + | | 0xFFFF  | ||
| + | |-  | ||
| + | | <code>MAX_LONG = LongWord(-1);</code>  | ||
| + | | 0xFFFFFFFF  | ||
| + | |-  | ||
| + | | <code>MAX_LONG_LONG = UInt64(-1);</code>  | ||
| + | | 0xFFFFFFFFFFFFFFFF  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Universal time''' <code> MILLISECONDS_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>MILLISECONDS_PER_SECOND = 1000;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>MICROSECONDS_PER_SECOND = 1000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>NANOSECONDS_PER_SECOND = 1000000000;</code>  | ||
| + | |    | ||
| + | |-   | ||
| + | | <code>MILLISECONDS_PER_DAY = 86400000;</code>  | ||
| + | | 60*60*24*1000;  | ||
| + | |-  | ||
| + | | <code>SECONDS_PER_DAY = 86400;</code>  | ||
| + | | 60*60*24;  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Ultibo time''' <code> TIME_TICKS_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | |colspan="2"|100 nanosecond ticks since 1/1/1601  | ||
| + | |-  | ||
| + | |colspan="2"|Note: Nanoseconds is 10^9 so 100 nanosecond ticks is 10^7  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>TIME_TICKS_PER_MICROSECOND = 10;</code>  | ||
| + | | 10^7 / 10^6  | ||
| + | |-  | ||
| + | | <code>TIME_TICKS_PER_MILLISECOND = 10000;</code>  | ||
| + | | 10^7 / 10^3  | ||
| + | |-   | ||
| + | | <code>TIME_TICKS_PER_SECOND = 10000000;</code>  | ||
| + | | 10^7  | ||
| + | |-  | ||
| + | | <code>TIME_TICKS_PER_MINUTE = 600000000;</code>  | ||
| + | | 60 * 10^7  | ||
| + | |-  | ||
| + | | <code>TIME_TICKS_PER_HOUR = 36000000000;</code>  | ||
| + | | 60 * 60 * 10^7  | ||
| + | |-  | ||
| + | | <code>TIME_TICKS_PER_DAY = 864000000000;</code>  | ||
| + | | 24 * 60 * 60 * 10^7  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>TIME_TICKS_TO_1899 = 94353120000000000;</code>  | ||
| + | | Offset between 1/1/1601 (Ultibo) and 30/12/1899 (FreePascal)  | ||
| + | |-  | ||
| + | | <code>TIME_TICKS_TO_1970 = 116444736000000000;</code>  | ||
| + | | Offset between 1/1/1601 (Ultibo) and 1/1/1970 (Unix/Linux)  | ||
| + | |-  | ||
| + | | <code>TIME_TICKS_TO_1980 = 119600064000000000;</code>  | ||
| + | | Offset between 1/1/1601 (Ultibo) and 1/1/1980 (DOS)  | ||
| + | |-  | ||
| + | | <code>TIME_TICKS_TO_2001 = 126227808000000000;</code>  | ||
| + | | Offset between 1/1/1601 (Ultibo) and 1/1/2001 (Clock is assumed not set if time is less than this)  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>TIME_TICKS_PER_10MILLISECONDS = 100000;</code>  | ||
| + | | 10^7 / 10^2  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Unix/Linux time''' <code> UNIX_TIME_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | |colspan="2"|Seconds since 1/1/1970  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>UNIX_TIME_MILLISECONDS_PER_DAY = 86400000;</code>  | ||
| + | | 60*60*24*1000;  | ||
| + | |-  | ||
| + | | <code>UNIX_TIME_SECONDS_PER_DAY = 86400;</code>  | ||
| + | | 60*60*24;  | ||
| + | |-  | ||
| + | | <code>UNIX_TIME_DAYS_TO_1970 = 25569.0;</code>  | ||
| + | | Offset between 1899 (FreePascal) and 1970 (Unix/Linux)  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''FreePascal time''' <code> PASCAL_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | |colspan="2"|TDateTime starts at 30/12/1899  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>PASCAL_TIME_MILLISECONDS_PER_DAY = 86400000;</code>  | ||
| + | | 60*60*24*1000;  | ||
| + | |-  | ||
| + | | <code>PASCAL_TIME_SECONDS_PER_DAY = 86400;</code>  | ||
| + | | 60*60*24;  | ||
| + | |-  | ||
| + | | <code>PASCAL_TIME_DOS_TIME_START = 2162688;</code>  | ||
| + | | DOS date time value for start of DOS time (1/1/1980)  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>PASCAL_DAY_OFFSET = 1.0;</code>  | ||
| + | | TDateTime value 1 day  | ||
| + | |-  | ||
| + | | <code>PASCAL_MINUTE_OFFSET = 0.000694444444444444;</code>  | ||
| + | | TDateTime value of 1 minute  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''System call''' <code> SYSTEM_CALL_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>SYSTEM_CALL_UNDEFINED = $00000000;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>SYSTEM_CALL_CONTEXT_SWITCH = $00000001;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Machine type''' <code> MACHINE_TYPE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>MACHINE_TYPE_UNKNOWN = 0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>MACHINE_TYPE_BCM2708 = 1;</code>  | ||
| + | | Broadcom BCM2708 (Raspberry Pi)  | ||
| + | |-  | ||
| + | | <code>MACHINE_TYPE_BCM2709 = 2;</code>  | ||
| + | | Broadcom BCM2709 (Raspberry Pi 2)  | ||
| + | |-  | ||
| + | | <code>MACHINE_TYPE_BCM2710 = 3;</code>  | ||
| + | | Broadcom BCM2710 (Raspberry Pi 3)  | ||
| + | |-  | ||
| + | | <code>MACHINE_TYPE_VERSATILEPB = 4;</code>  | ||
| + | | ARM Versatile PB (QEMU)  | ||
| + | |-  | ||
| + | | <code>MACHINE_TYPE_BCM2711 = 5;</code>  | ||
| + | | Broadcom BCM2711 (Raspberry Pi 4)  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Board type''' <code> BOARD_TYPE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_UNKNOWN = 0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_RPIA = 1;</code>  | ||
| + | | Raspberry Pi Model A  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_RPIB = 2;</code>  | ||
| + | | Raspberry Pi Model B  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_RPI_COMPUTE = 3;</code>  | ||
| + | | Raspberry Pi Compute Module  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_RPIA_PLUS = 4;</code>  | ||
| + | | Raspberry Pi Model A+  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_RPIB_PLUS = 5;</code>  | ||
| + | | Raspberry Pi Model B+  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_RPI2B = 6;</code>  | ||
| + | | Raspberry Pi 2 Model B  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_RPI_ZERO = 7;</code>  | ||
| + | | Raspberry Pi Model Zero  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_PC_X86 = 22;</code>  | ||
| + | | PC x86  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_PC_X86_64 = 23;</code>  | ||
| + | | PC x86 64bit  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_RPI3B = 24;</code>  | ||
| + | | Raspberry Pi 3 Model B  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_QEMUVPB = 25;</code>  | ||
| + | | QEMU Versatile PB  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_RPI_COMPUTE3 = 26;</code>  | ||
| + | | Raspberry Pi Compute Module 3  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_RPI_ZERO_W = 27;</code>  | ||
| + | | Raspberry Pi Model Zero W  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_RPI3B_PLUS = 28;</code>  | ||
| + | | Raspberry Pi 3 Model B+  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_RPI3A_PLUS = 29;</code>  | ||
| + | | Raspberry Pi 3 Model A+  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_RPI_COMPUTE3_PLUS = 30;</code>  | ||
| + | | Raspberry Pi Compute Module 3+  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_RPI4B = 31;</code>  | ||
| + | | Raspberry Pi 4 Model B  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_RPI400 = 32;</code>  | ||
| + | | Raspberry Pi 400  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_RPI_COMPUTE4 = 33;</code>  | ||
| + | | Raspberry Pi Compute Module 4  | ||
| + | |-  | ||
| + | | <code>BOARD_TYPE_RPI_ZERO2_W = 34;</code>  | ||
| + | | Raspberry Pi Model Zero 2 W  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''CPU arch''' <code> CPU_ARCH_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>CPU_ARCH_UNKNOWN = 0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ARCH_ARM32 = 1;</code>  | ||
| + | | ARM Arch 32 (ARMv6/ARMv7)(ARMv8 in 32bit mode)  | ||
| + | |-  | ||
| + | | <code>CPU_ARCH_ARM64 = 2;</code>  | ||
| + | | ARM Arch 64 (ARMv8)  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''CPU type''' <code> CPU_TYPE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>CPU_TYPE_UNKNOWN = 0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_TYPE_ARMV6 = 1;</code>  | ||
| + | | ARMv6 (ARM1176 etc)  | ||
| + | |-  | ||
| + | | <code>CPU_TYPE_ARMV7 = 2;</code>  | ||
| + | | ARMv7 (Cortex A5/A7/A8/A9/A15/A17 etc)  | ||
| + | |-  | ||
| + | | <code>CPU_TYPE_ARMV8 = 3;</code>  | ||
| + | | ARMv8 (Cortex A53/A57/A72 etc)  | ||
| + | |-   | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''CPU model''' <code> CPU_MODEL_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>CPU_MODEL_UNKNOWN = 0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MODEL_ARM1176JZFS = 1;</code>  | ||
| + | | ARM1176JZF-S  | ||
| + | |-  | ||
| + | | <code>CPU_MODEL_CORTEX_A5 = 2;</code>  | ||
| + | | ARM Cortex-A5  | ||
| + | |-  | ||
| + | | <code>CPU_MODEL_CORTEX_A7 = 3;</code>  | ||
| + | | ARM Cortex-A7  | ||
| + | |-  | ||
| + | | <code>CPU_MODEL_CORTEX_A8 = 4;</code>  | ||
| + | | ARM Cortex-A8  | ||
| + | |-  | ||
| + | | <code>CPU_MODEL_CORTEX_A9 = 5;</code>  | ||
| + | | ARM Cortex-A9  | ||
| + | |-  | ||
| + | | <code>CPU_MODEL_CORTEX_A15 = 6;</code>  | ||
| + | | ARM Cortex-A15  | ||
| + | |-  | ||
| + | | <code>CPU_MODEL_CORTEX_A17 = 7;</code>  | ||
| + | | ARM Cortex-A17  | ||
| + | |-  | ||
| + | | <code>CPU_MODEL_CORTEX_A53 = 8;</code>  | ||
| + | | ARM Cortex-A53  | ||
| + | |-  | ||
| + | | <code>CPU_MODEL_CORTEX_A57 = 9;</code>  | ||
| + | | ARM Cortex-A57  | ||
| + | |-  | ||
| + | | <code>CPU_MODEL_CORTEX_A72 = 10;</code>  | ||
| + | | ARM Cortex-A72  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''CPU description''' <code> CPU_DESCRIPTION_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>CPU_DESCRIPTION_UNKNOWN = 'Unknown';</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>CPU_DESCRIPTION_ARM1176JZFS = 'ARM1176JZF-S';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_DESCRIPTION_CORTEX_A5 = 'ARM Cortex-A5';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_DESCRIPTION_CORTEX_A5_MP = 'ARM Cortex-A5 MPCore';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_DESCRIPTION_CORTEX_A7 = 'ARM Cortex-A7 MPCore';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_DESCRIPTION_CORTEX_A8 = 'ARM Cortex-A8';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_DESCRIPTION_CORTEX_A9 = 'ARM Cortex-A9';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_DESCRIPTION_CORTEX_A9_MP = 'ARM Cortex-A9 MPCore';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_DESCRIPTION_CORTEX_A15 = 'ARM Cortex-A15 MPCore';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_DESCRIPTION_CORTEX_A17 = 'ARM Cortex-A17 MPCore';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_DESCRIPTION_CORTEX_A53 = 'ARM Cortex-A53 MPCore';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_DESCRIPTION_CORTEX_A57 = 'ARM Cortex-A57 MPCore';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_DESCRIPTION_CORTEX_A72 = 'ARM Cortex-A72 MPCore';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''CPU state''' <code> CPU_STATE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>CPU_STATE_NONE = (0 shl 0);</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>CPU_STATE_MMU_ENABLED = (1 shl 0);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_STATE_DATA_CACHE_ENABLED = (1 shl 1);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_STATE_INSTRUCTION_CACHE_ENABLED = (1 shl 2);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_STATE_BRANCH_PREDICTION_ENABLED = (1 shl 3);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''CPU group''' <code> CPU_GROUP__* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_0 = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_1 = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_2 = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_3 = 3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_4 = 4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_5 = 5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_6 = 6;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_7 = 7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_8 = 8;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_9 = 9;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_10 = 10;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_11 = 11;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_12 = 12;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_13 = 13;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_14 = 14;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_15 = 15;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_16 = 16;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_17 = 17;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_18 = 18;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_19 = 19;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_20 = 20;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_21 = 21;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_22 = 22;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_23 = 23;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_24 = 24;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_25 = 25;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_26 = 26;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_27 = 27;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_28 = 28;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_29 = 29;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_30 = 30;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_31 = 31;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_ALL = $FFFFFFFF;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>CPU_GROUP_MAX = CPU_GROUP_31;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''CPU Id''' <code> CPU_ID_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>CPU_ID_0 = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>CPU_ID_1 = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_2 = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_3 = 3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_4 = 4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_5 = 5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_6 = 6;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_7 = 7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_8 = 8;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_9 = 9;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_10 = 10;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_11 = 11;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_12 = 12;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_13 = 13;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_14 = 14;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_15 = 15;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_16 = 16;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_17 = 17;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_18 = 18;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_19 = 19;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_20 = 20;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_21 = 21;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_22 = 22;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_23 = 23;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_24 = 24;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_25 = 25;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_26 = 26;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_27 = 27;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_28 = 28;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_29 = 29;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_30 = 30;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_ID_31 = 31;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>CPU_ID_ALL = $FFFFFFFF;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>CPU_ID_MAX = CPU_ID_31;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''CPU mask''' <code> CPU_MASK_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>CPU_MASK_0 = (1 shl CPU_ID_0);</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>CPU_MASK_1 = (1 shl CPU_ID_1);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_2 = (1 shl CPU_ID_2);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_3 = (1 shl CPU_ID_3);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_4 = (1 shl CPU_ID_4);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_5 = (1 shl CPU_ID_5);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_6 = (1 shl CPU_ID_6);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_7 = (1 shl CPU_ID_7);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_8 = (1 shl CPU_ID_8);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_9 = (1 shl CPU_ID_9);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_10 = (1 shl CPU_ID_10);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_11 = (1 shl CPU_ID_11);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_12 = (1 shl CPU_ID_12);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_13 = (1 shl CPU_ID_13);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_14 = (1 shl CPU_ID_14);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_15 = (1 shl CPU_ID_15);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_16 = (1 shl CPU_ID_16);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_17 = (1 shl CPU_ID_17);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_18 = (1 shl CPU_ID_18);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_19 = (1 shl CPU_ID_19);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_20 = (1 shl CPU_ID_20);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_21 = (1 shl CPU_ID_21);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_22 = (1 shl CPU_ID_22);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_23 = (1 shl CPU_ID_23);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_24 = (1 shl CPU_ID_24);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_25 = (1 shl CPU_ID_25);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_26 = (1 shl CPU_ID_26);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_27 = (1 shl CPU_ID_27);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_28 = (1 shl CPU_ID_28);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_29 = (1 shl CPU_ID_29);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_30 = (1 shl CPU_ID_30);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_31 = (1 shl CPU_ID_31);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>CPU_MASK_NONE = $00000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_MASK_ALL = $FFFFFFFF;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''CPU affinity''' <code> CPU_AFFINITY_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_0 = (1 shl CPU_ID_0);</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_1 = (1 shl CPU_ID_1);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_2 = (1 shl CPU_ID_2);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_3 = (1 shl CPU_ID_3);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_4 = (1 shl CPU_ID_4);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_5 = (1 shl CPU_ID_5);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_6 = (1 shl CPU_ID_6);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_7 = (1 shl CPU_ID_7);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_8 = (1 shl CPU_ID_8);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_9 = (1 shl CPU_ID_9);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_10 = (1 shl CPU_ID_10);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_11 = (1 shl CPU_ID_11);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_12 = (1 shl CPU_ID_12);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_13 = (1 shl CPU_ID_13);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_14 = (1 shl CPU_ID_14);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_15 = (1 shl CPU_ID_15);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_16 = (1 shl CPU_ID_16);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_17 = (1 shl CPU_ID_17);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_18 = (1 shl CPU_ID_18);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_19 = (1 shl CPU_ID_19);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_20 = (1 shl CPU_ID_20);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_21 = (1 shl CPU_ID_21);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_22 = (1 shl CPU_ID_22);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_23 = (1 shl CPU_ID_23);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_24 = (1 shl CPU_ID_24);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_25 = (1 shl CPU_ID_25);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_26 = (1 shl CPU_ID_26);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_27 = (1 shl CPU_ID_27);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_28 = (1 shl CPU_ID_28);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_29 = (1 shl CPU_ID_29);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_30 = (1 shl CPU_ID_30);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_31 = (1 shl CPU_ID_31);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_NONE = $00000000;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CPU_AFFINITY_ALL = $FFFFFFFF;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''FPU type''' <code> FPU_TYPE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>FPU_TYPE_UNKNOWN = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>FPU_TYPE_SOFT = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FPU_TYPE_VFPV2 = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FPU_TYPE_VFPV3 = 3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FPU_TYPE_VFPV4 = 4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''FPU state''' <code> FPU_STATE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>FPU_STATE_NONE = (0 shl 0);</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>FPU_STATE_ENABLED = (1 shl 0);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''GPU type''' <code> GPU_TYPE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>GPU_TYPE_UNKNOWN = 0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPU_TYPE_VC4 = 1;</code>  | ||
| + | | Broadcom VideoCore IV  | ||
| + | |-  | ||
| + | | <code>GPU_TYPE_MALI400 = 2;</code>  | ||
| + | | ARM Mali 400  | ||
| + | |-  | ||
| + | | <code>GPU_TYPE_MALI450 = 3;</code>  | ||
| + | | ARM Mali 450  | ||
| + | |-  | ||
| + | | <code>GPU_TYPE_GC880 = 4;</code>  | ||
| + | | Vivante GC880  | ||
| + | |-  | ||
| + | | <code>GPU_TYPE_GC2000 = 5;</code>  | ||
| + | | Vivante GC2000  | ||
| + | |-  | ||
| + | | <code>GPU_TYPE_VC6 = 6;</code>  | ||
| + | | Broadcom VideoCore VI  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''GPU state''' <code> GPU_STATE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>GPU_STATE_NONE = (0 shl 0);</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>GPU_STATE_ENABLED = (1 shl 0);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Cache type''' <code> CACHE_TYPE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>CACHE_TYPE_NONE = 0;</code>  | ||
| + | | No Cache  | ||
| + | |-  | ||
| + | | <code>CACHE_TYPE_DATA = 1;</code>  | ||
| + | | Data Cache Only  | ||
| + | |-  | ||
| + | | <code>CACHE_TYPE_INSTRUCTION = 2;</code>  | ||
| + | | Instruction Cache Only  | ||
| + | |-  | ||
| + | | <code>CACHE_TYPE_SEPARATE = 3;</code>  | ||
| + | | Separate Data and Instruction Caches  | ||
| + | |-  | ||
| + | | <code>CACHE_TYPE_UNIFIED = 4;</code>  | ||
| + | | Unified Data and Instruction Cache  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''DMA direction''' <code> DMA_DIR_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>DMA_DIR_NONE = 0;</code>  | ||
| + | | No direction (No special handling by controller)  | ||
| + | |-  | ||
| + | | <code>DMA_DIR_MEM_TO_MEM = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DIR_MEM_TO_DEV = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DIR_DEV_TO_MEM = 3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DIR_DEV_TO_DEV = 4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''DMA DREQ Id''' <code> DMA_DREQ_ID_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_NONE = 0;</code>  | ||
| + | | No peripheral gating (memory to memory transfer)  | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_UART_TX = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_UART_RX = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_SPI_TX = 3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_SPI_RX = 4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_SPI_SLAVE_TX = 5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_SPI_SLAVE_RX = 6;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_PCM_TX = 7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_PCM_RX = 8;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_PWM = 9;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_MMC = 10;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_SDHOST = 11;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|Additional and aliased constants (Where applicable)  | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_UART0_TX = DMA_DREQ_ID_UART_TX;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_UART0_RX = DMA_DREQ_ID_UART_RX;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_UART1_TX = 12;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_UART1_RX = 13;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_UART2_TX = 14;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_UART2_RX = 15;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_UART3_TX = 16;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_UART3_RX = 17;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_UART4_TX = 18;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_UART4_RX = 19;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_UART5_TX = 20;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_UART5_RX = 21;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_SPI0_TX = DMA_DREQ_ID_SPI_TX;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_SPI0_RX = DMA_DREQ_ID_SPI_RX;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_SPI1_TX = 22;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_SPI1_RX = 23;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_SPI2_TX = 24;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_SPI2_RX = 25;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_SPI3_TX = 26;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_SPI3_RX = 27;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_SPI4_TX = 28;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_SPI4_RX = 29;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_SPI5_TX = 30;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code> DMA_DREQ_ID_SPI5_RX = 31;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_SPI6_TX = 32;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_SPI6_RX = 33;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_PCM0_TX = DMA_DREQ_ID_PCM_TX;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_PCM0_RX = DMA_DREQ_ID_PCM_RX;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_PWM0 = DMA_DREQ_ID_PWM;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_PWM1 = 34;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_EMMC0 = DMA_DREQ_ID_MMC;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_EMMC1 = DMA_DREQ_ID_SDHOST;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>DMA_DREQ_ID_EMMC2 = 35;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''GPIO pin''' <code> GPIO_PIN_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_0 = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_1 = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_2 = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_3 = 3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_4 = 4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_5 = 5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_6 = 6;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_7 = 7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_8 = 8;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_9 = 9;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_10 = 10;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_11 = 11;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_12 = 12;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_13 = 13;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_14 = 14;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_15 = 15;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_16 = 16;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_17 = 17;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_18 = 18;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_19 = 19;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_20 = 20;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_21 = 21;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_22 = 22;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_23 = 23;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_24 = 24;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_25 = 25;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_26 = 26;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_27 = 27;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_28 = 28;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_29 = 29;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_30 = 30;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_31 = 31;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_32 = 32;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_33 = 33;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_34 = 34;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_35 = 35;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_36 = 36;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_37 = 37;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_38 = 38;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_39 = 39;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_40 = 40;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_41 = 41;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_42 = 42;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_43 = 43;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_44 = 44;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_45 = 45;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_46 = 46;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_47 = 47;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_48 = 48;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_49 = 49;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_50 = 50;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_51 = 51;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_52 = 52;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_53 = 53;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_54 = 54;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_55 = 55;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_56 = 56;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_57 = 57;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_58 = 58;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_59 = 59;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_60 = 60;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_MAX = 60;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>GPIO_PIN_UNKNOWN = LongWord(-1);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''GPIO function''' <code> GPIO_FUNCTION_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>GPIO_FUNCTION_IN = 0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_FUNCTION_OUT = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_FUNCTION_ALT0 = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_FUNCTION_ALT1 = 3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_FUNCTION_ALT2 = 4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_FUNCTION_ALT3 = 5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_FUNCTION_ALT4 = 6;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_FUNCTION_ALT5 = 7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>GPIO_FUNCTION_UNKNOWN = LongWord(-1);</code>  | ||
| + | | Returned by GPIOFunctionGet on error (eg device does not support reading the function state)  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''GPIO level''' <code> GPIO_LEVEL_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>GPIO_LEVEL_LOW = 0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_LEVEL_HIGH = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>GPIO_LEVEL_UNKNOWN = LongWord(-1);</code>  | ||
| + | | Returned by GPIOInputGet/Wait on error (eg device does not exist)  | ||
| + | |-   | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''GPIO pull''' <code> GPIO_PULL_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>GPIO_PULL_NONE = 0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PULL_UP = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_PULL_DOWN = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>GPIO_PULL_UNKNOWN = LongWord(-1);</code>  | ||
| + | | Returned by GPIOPullGet on error (eg device does not support reading the PullUp/Down state)  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''GPIO trigger''' <code> GPIO_TRIGGER_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>GPIO_TRIGGER_NONE = 0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_TRIGGER_LOW = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_TRIGGER_HIGH  = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_TRIGGER_RISING = 3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_TRIGGER_FALLING = 4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_TRIGGER_ASYNC_RISING = 5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_TRIGGER_ASYNC_FALLING = 6;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>GPIO_TRIGGER_EDGE = 7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>GPIO_TRIGGER_UNKNOWN = LongWord(-1);</code>  | ||
| + | | Passed to GPIO callback event when device does not support determining the trigger source  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Virtual GPIO pin''' <code> VIRTUAL_GPIO_PIN_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>VIRTUAL_GPIO_PIN_0 = GPIO_PIN_0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>VIRTUAL_GPIO_PIN_1 = GPIO_PIN_1;</code>  | ||
| + | |    | ||
| + | |-   | ||
| + | | <code>VIRTUAL_GPIO_PIN_2 = GPIO_PIN_2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>VIRTUAL_GPIO_PIN_3 = GPIO_PIN_3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>VIRTUAL_GPIO_PIN_4 = GPIO_PIN_4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>VIRTUAL_GPIO_PIN_5 = GPIO_PIN_5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>VIRTUAL_GPIO_PIN_6 = GPIO_PIN_6;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>VIRTUAL_GPIO_PIN_7 = GPIO_PIN_7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />   | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Virtual GPIO function''' <code> VIRTUAL_GPIO_FUNCTION_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>VIRTUAL_GPIO_FUNCTION_IN = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>VIRTUAL_GPIO_FUNCTION_OUT = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Serial baud rate''' <code> SERIAL_BAUD_RATE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>SERIAL_BAUD_RATE_DEFAULT = 0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>SERIAL_BAUD_RATE_STANDARD = 115200;</code>  | ||
| + | | If SERIAL_BAUD_RATE_DEFAULT is passed to SerialOpen then this is the baud rate to use  | ||
| + | |-  | ||
| + | | <code>SERIAL_BAUD_RATE_FALLBACK = 9600;</code>  | ||
| + | | The fallback baud rate if SERIAL_BAUD_RATE_STANDARD is not supported by the device  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />   | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Serial data bit''' <code> SERIAL_DATA_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>SERIAL_DATA_8BIT = 8;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>SERIAL_DATA_7BIT = 7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SERIAL_DATA_6BIT = 6;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SERIAL_DATA_5BIT = 5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Serial stop bit''' <code> SERIAL_STOP_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>SERIAL_STOP_1BIT = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SERIAL_STOP_2BIT = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SERIAL_STOP_1BIT5 = 3;</code>  | ||
| + | | 1.5 Stop bits  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />   | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Serial parity''' <code> SERIAL_PARITY_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>SERIAL_PARITY_NONE = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>SERIAL_PARITY_ODD = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SERIAL_PARITY_EVEN = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SERIAL_PARITY_MARK = 3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SERIAL_PARITY_SPACE = 4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Serial flow control''' <code> SERIAL_FLOW_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>SERIAL_FLOW_NONE = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>SERIAL_FLOW_RTS_CTS = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SERIAL_FLOW_DSR_DTR = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />   | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''I2C address''' <code> I2C_ADDRESS_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>I2C_ADDRESS_INVALID = Word(-1);</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-   | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''SPI mode''' <code> SPI_MODE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>SPI_MODE_4WIRE = 0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SPI_MODE_3WIRE = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SPI_MODE_LOSSI = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>SPI_MODE_UNKNOWN = LongWord(-1);</code>  | ||
| + | | Returned by SPIGetMode on error (eg device does not exist)  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''SPI chip select''' <code> SPI_CS_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>SPI_CS_0 = 0;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SPI_CS_1 = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SPI_CS_2 = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SPI_CS_3 = 3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SPI_CS_4 = 4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SPI_CS_5 = 5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SPI_CS_6 = 6;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SPI_CS_7 = 7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SPI_CS_8 = 8;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SPI_CS_9 = 9;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SPI_CS_10 = 10;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SPI_CS_11 = 11;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SPI_CS_12 = 12;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SPI_CS_13 = 13;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SPI_CS_14 = 14;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SPI_CS_15 = 15;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>SPI_CS_MAX = 15;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>SPI_CS_NONE = LongWord(-1);</code>  | ||
| + | | Special value for No Chip Select to allow external control of additional CS lines  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''SPI clock phase (CPHA)''' <code> SPI_CLOCK_PHASE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>SPI_CLOCK_PHASE_LOW = 0;</code>  | ||
| + | | Clock edge rising or falling for data input/output  | ||
| + | |-  | ||
| + | | <code>SPI_CLOCK_PHASE_HIGH = 1;</code>  | ||
| + | | See https://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus for more information  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>SPI_CLOCK_PHASE_UNKNOWN = LongWord(-1);</code>  | ||
| + | | Returned by SPIGetClockPhase on error (eg device does not exist)  | ||
| + | |-   | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''SPI clock polarity (CPOL)''' <code> SPI_CLOCK_POLARITY_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>SPI_CLOCK_POLARITY_LOW = 0;</code>  | ||
| + | | Clock is low when not transmitting  | ||
| + | |-  | ||
| + | | <code>SPI_CLOCK_POLARITY_HIGH = 1;</code>  | ||
| + | | Clock is high when not transmitting  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>SPI_CLOCK_POLARITY_UNKNOWN = LongWord(-1);</code>  | ||
| + | | Returned by SPIGetClockPolarity on error (eg device does not exist)  | ||
| + | |-   | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />      | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''SPI chip select polarity (CSPOL)''' <code> SPI_CS_POLARITY_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>SPI_CS_POLARITY_LOW = 0;</code>  | ||
| + | | Chip select is active low (Default)  | ||
| + | |-  | ||
| + | | <code>SPI_CS_POLARITY_HIGH = 1;</code>  | ||
| + | | Chip select is active high  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>SPI_CS_POLARITY_UNKNOWN = LongWord(-1);</code>  | ||
| + | | Returned by SPIGetSelectPolarity on error (eg device does not exist)  | ||
| + | |-   | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Power Id''' <code> POWER_ID_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>POWER_ID_MMC0 = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>POWER_ID_MMC1 = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_MMC2 = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_MMC3 = 3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_UART0 = 4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_UART1 = 5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_UART2 = 6;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_UART3 = 7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_USB0 = 8;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_USB1 = 9;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_USB2 = 10;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_USB3 = 11;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_I2C0 = 12;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_I2C1 = 13;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_I2C2 = 14;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_I2C3 = 15;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_SPI0 = 16;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_SPI1 = 17;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_SPI2 = 18;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_SPI3 = 19;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_CCP2TX = 20;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|Additional constants (Where applicable)  | ||
| + | |-  | ||
| + | | <code>POWER_ID_UART4 = 21;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_UART5 = 22;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_UART6 = 23;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_UART7 = 24;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_UART8 = 25;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_UART9 = 26;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_I2C4 = 27;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_I2C5 = 28;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_I2C6 = 29;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_I2C7 = 30;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_I2C8 = 31;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_I2C9 = 32;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_SPI4 = 33;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_SPI5 = 34;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_SPI6 = 35;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_SPI7 = 36;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_SPI8 = 37;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_SPI9 = 38;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>POWER_ID_UNKNOWN = LongWord(-1);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Power state''' <code> POWER_STATE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>POWER_STATE_OFF = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>POWER_STATE_ON = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Clock Id''' <code> CLOCK_ID_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_MMC0 = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_MMC1 = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_MMC2 = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_MMC3 = 3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_UART0 = 4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_UART1 = 5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_UART2 = 6;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_UART3 = 7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_CPU = 8;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_CORE = 9;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_GPU = 10;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_V3D = 11;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_H264 = 12;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_ISP = 13;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_SDRAM = 14;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_PIXEL = 15;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_PWM0 = 16;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_PWM1 = 17;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_I2C0 = 18;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_I2C1 = 19;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_I2C2 = 20;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_I2C3 = 21;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_SPI0 = 22;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_SPI1 = 23;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_SPI2 = 24;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_SPI3 = 25;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|Additional constants (Where applicable)  | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_UART4 = 26;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_UART5 = 27;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_UART6 = 28;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_UART7 = 29;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_UART8 = 30;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_UART9 = 31;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_I2C4 = 32;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_I2C5 = 33;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_I2C6 = 34;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_I2C7 = 35;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_I2C8 = 36;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_I2C9 = 37;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_SPI4 = 38;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_SPI5 = 39;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_SPI6 = 40;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_SPI7 = 41;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_SPI8 = 42;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_SPI9 = 43;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>CLOCK_ID_UNKNOWN = LongWord(-1);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />   | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Clock state''' <code> CLOCK_STATE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>CLOCK_STATE_OFF = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>CLOCK_STATE_ON = 1;</code>  | ||
| + | |    | ||
| + | |-   | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Turbo Id''' <code> TURBO_ID_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>TURBO_ID_SOC = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Voltage Id''' <code> VOLTAGE_ID_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>VOLTAGE_ID_CORE = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>VOLTAGE_ID_SDRAM_C = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>VOLTAGE_ID_SDRAM_P = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>VOLTAGE_ID_SDRAM_I = 3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />    | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Temperature Id''' <code> TEMPERATURE_ID_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>TEMPERATURE_ID_SOC = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Console direction''' <code> CONSOLE_DIRECTION_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>CONSOLE_DIRECTION_UP = 0;</code>  | ||
| + | | Scroll Console Up  | ||
| + | |-  | ||
| + | | <code>CONSOLE_DIRECTION_DOWN = 1;</code>  | ||
| + | | Scroll Console Down  | ||
| + | |-  | ||
| + | | <code>CONSOLE_DIRECTION_LEFT = 2;</code>  | ||
| + | | Scroll Console Left  | ||
| + | |-  | ||
| + | | <code>CONSOLE_DIRECTION_RIGHT = 3;</code>  | ||
| + | | Scroll Console Right  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />    | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Console position''' <code> CONSOLE_POSITION_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>CONSOLE_POSITION_FULL = 0;</code>  | ||
| + | | Console Window will appear in the full console  | ||
| + | |-  | ||
| + | | <code>CONSOLE_POSITION_TOP = 1;</code>  | ||
| + | | Console Window will appear in the top half of the console  | ||
| + | |-  | ||
| + | | <code>CONSOLE_POSITION_BOTTOM = 2;</code>  | ||
| + | | Console Window will appear in the bottom half of the console  | ||
| + | |-  | ||
| + | | <code>CONSOLE_POSITION_LEFT = 3;</code>  | ||
| + | | Console Window will appear in the left half of the console  | ||
| + | |-  | ||
| + | | <code>CONSOLE_POSITION_RIGHT = 4;</code>  | ||
| + | | Console Window will appear in the right half of the console  | ||
| + | |-  | ||
| + | | <code>CONSOLE_POSITION_TOPLEFT = 5;</code>  | ||
| + | | Console Window will appear in the top left corner of the console  | ||
| + | |-  | ||
| + | | <code>CONSOLE_POSITION_TOPRIGHT = 6;</code>  | ||
| + | | Console Window will appear in the top right corner of the console  | ||
| + | |-  | ||
| + | | <code>CONSOLE_POSITION_BOTTOMLEFT = 7;</code>  | ||
| + | | Console Window will appear in the bottom left corner of the console  | ||
| + | |-  | ||
| + | | <code>CONSOLE_POSITION_BOTTOMRIGHT = 8;</code>  | ||
| + | | Console Window will appear in the bottom right corner of the console  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>CONSOLE_POSITION_FULLSCREEN = 9;</code>  | ||
| + | | Console Window will occupy the entire screen (Without any border or desktop)(If supported)  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>CONSOLE_POSITION_UNKNOWN = LongWord(-1);</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />   | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Framebuffer depth''' <code> FRAMEBUFFER_DEPTH_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>FRAMEBUFFER_DEPTH_8 = 8;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>FRAMEBUFFER_DEPTH_16 = 16;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FRAMEBUFFER_DEPTH_24 = 24;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FRAMEBUFFER_DEPTH_32 = 32;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Framebuffer pixel order''' <code> FRAMEBUFFER_ORDER_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>FRAMEBUFFER_ORDER_BGR = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>FRAMEBUFFER_ORDER_RGB = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />    | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Framebuffer alpha mode''' <code> FRAMEBUFFER_MODE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>FRAMEBUFFER_MODE_ENABLED = 0;</code>  | ||
| + | | Alpha channel enabled (0 = Fully opaque)  | ||
| + | |-  | ||
| + | | <code>FRAMEBUFFER_MODE_REVERSED = 1;</code>  | ||
| + | | Alpha channel reversed (0 = Fully transparent)  | ||
| + | |-  | ||
| + | | <code>FRAMEBUFFER_MODE_IGNORED = 2;</code>  | ||
| + | | Alpha channel ignored  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />    | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Framebuffer rotation''' <code> FRAMEBUFFER_ROTATION_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>FRAMEBUFFER_ROTATION_0 = 0;</code>  | ||
| + | | No rotation  | ||
| + | |-  | ||
| + | | <code>FRAMEBUFFER_ROTATION_90 = 1;</code>  | ||
| + | | 90 degree rotation  | ||
| + | |-  | ||
| + | | <code>FRAMEBUFFER_ROTATION_180 = 2;</code>  | ||
| + | | 180 degree rotation  | ||
| + | |-  | ||
| + | | <code>FRAMEBUFFER_ROTATION_270 = 3;</code>  | ||
| + | | 270 degree rotation  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />   | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Log level''' <code> LOG_LEVEL_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>LOG_LEVEL_DEBUG = 1;</code>  | ||
| + | | Debugging messages  | ||
| + | |-  | ||
| + | | <code>LOG_LEVEL_INFO = 2;</code>  | ||
| + | | Informational messages  | ||
| + | |-  | ||
| + | | <code>LOG_LEVEL_WARN = 3;</code>  | ||
| + | | Warning messages  | ||
| + | |-  | ||
| + | | <code>LOG_LEVEL_ERROR = 4;</code>  | ||
| + | | Error messages  | ||
| + | |-  | ||
| + | | <code>LOG_LEVEL_NONE = 5;</code>  | ||
| + | | No messages  | ||
| + | |-   | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />   | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Logging protocol''' <code> LOGGING_PROTOCOL_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>LOGGING_PROTOCOL_UDP = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>LOGGING_PROTOCOL_TCP = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />    | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Logging facility''' <code> LOGGING_FACILITY_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_KERNEL = 0;</code>  | ||
| + | | Core "kernel" log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_PLATFORM = 1;</code>  | ||
| + | | Platform log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_THREADS = 2;</code>  | ||
| + | | Thread log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_DEVICES = 3;</code>  | ||
| + | | Device log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_NETWORK = 4;</code>  | ||
| + | | Network log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_STORAGE = 5;</code>  | ||
| + | | Storage log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_FILESYSTEM = 6;</code>  | ||
| + | | Filesystem log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_KEYBOARD = 7;</code>  | ||
| + | | Keyboard log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_MOUSE = 8;</code>  | ||
| + | | Mouse log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_SCSI = 9;</code>  | ||
| + | | SCSI log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_DMA = 10;</code>  | ||
| + | | DMA log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_GPIO = 11;</code>  | ||
| + | | GPIO log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_MMC = 12;</code>  | ||
| + | | MMC/SD log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_USB = 13;</code>  | ||
| + | | USB log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_SERVICES = 14;</code>  | ||
| + | | Services log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_HTTP = 15;</code>  | ||
| + | | HTTP log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_IMAP = 16;</code>  | ||
| + | | IMAP4 log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_POP = 17;</code>  | ||
| + | | POP3 log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_SMTP = 18;</code>  | ||
| + | | SMTP log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_TELNET = 19;</code>  | ||
| + | | Telnet log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_SSH = 20;</code>  | ||
| + | | SSH log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_SHELL = 21;</code>  | ||
| + | | Shell log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_NTP = 22;</code>  | ||
| + | | NTP log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_FTP = 23;</code>  | ||
| + | | FTP log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_RTC = 24;</code>  | ||
| + | | RTC log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_I2C = 25;</code>  | ||
| + | | I2C log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_I2S = 26;</code>  | ||
| + | | I2S log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_PWM = 27;</code>  | ||
| + | | PWM log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_SERIAL = 28;</code>  | ||
| + | | Serial log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_SPI = 29;</code>  | ||
| + | | SPI log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_UART = 30;</code>  | ||
| + | | UART log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_AUDIO = 31;</code>  | ||
| + | | Audio log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_1WIRE = 32;</code>  | ||
| + | | 1-Wire log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_TOUCH = 33;</code>  | ||
| + | | Touch log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_VIDEO = 34;</code>  | ||
| + | | Video log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_CODEC = 35;</code>  | ||
| + | | Codec log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_NFS = 36;</code>  | ||
| + | | NFS log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_RPC = 37;</code>  | ||
| + | | RPC log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_PCI = 38;</code>  | ||
| + | | PCI log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_VIRTIO = 39;</code>  | ||
| + | | VIRTIO log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_BLUETOOTH = 40;</code>  | ||
| + | | Bluetooth log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_JOYSTICK = 41;</code>  | ||
| + | | Joystick log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_HID = 42;</code>  | ||
| + | | HID log messages  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_USER = 1000;</code>  | ||
| + | | User log messages  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>LOGGING_FACILITY_INVALID = $FFFFFFFF;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />   | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Logging severity''' <code> LOGGING_SEVERITY_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>LOGGING_SEVERITY_ERROR = 0;</code>  | ||
| + | | Error log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_SEVERITY_WARN  = 1;</code>  | ||
| + | | Warning log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_SEVERITY_INFO = 2;</code>  | ||
| + | | Informational log messages  | ||
| + | |-  | ||
| + | | <code>LOGGING_SEVERITY_DEBUG = 3;</code>  | ||
| + | | Debugging log messages  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>LOGGING_SEVERITY_INVALID = $FFFFFFFF;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Handle type''' <code> HANDLE_TYPE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_SPIN = 1;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_MUTEX = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_SECTION = 3;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_SEMAPHORE = 4;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_SYNCHRONIZER = 5;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_CONDITION = 6;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_COMPLETION = 7;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_LIST = 8;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_QUEUE = 9;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_THREAD = 10;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_MESSAGESLOT = 11;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_MAILSLOT = 12;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_BUFFER = 13;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_EVENT = 14;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_TIMER = 15;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_WORKER = 16;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_WINDOW = 17;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_FONT = 18;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_KEYMAP = 19;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_FILE = 100;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_PIPE = 101;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_SOCKET = 102;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_DEVICE = 103;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_FIRMWARE = 104;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>HANDLE_TYPE_USER_BASE = 1000;</code>  | ||
| + | | Base value for user or application defined handle types  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />     | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Filesystem cache mode''' <code> FILESYS_CACHE_MODE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>FILESYS_CACHE_MODE_NONE = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>FILESYS_CACHE_MODE_READONLY = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>FILESYS_CACHE_MODE_READWRITE = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Cursor arrow''' <code> CURSOR_ARROW_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | |colspan="2"|Standard Arrow in 32 bit ARGB  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>CURSOR_ARROW_DEFAULT_WIDTH = 16;</code>  | ||
| + | | Must be >= 16 and <= 64 on Raspberry Pi  | ||
| + | |-  | ||
| + | | <code>CURSOR_ARROW_DEFAULT_HEIGHT = 18;</code>  | ||
| + | | Must be >= 16 and <= 64 on Raspberry Pi  | ||
| + | |-  | ||
| + | | <code>CURSOR_ARROW_DEFAULT_FORMAT = COLOR_FORMAT_DEFAULT;</code>  | ||
| + | | COLOR_FORMAT_ARGB32  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />   | ||
=== Type definitions ===  | === Type definitions ===  | ||
Latest revision as of 02:42, 23 October 2025
Return to Unit Reference
Description
Ultibo Global Constant Definitions unit
Constants
Universal error 
 ERROR_*  ERROR_SUCCESS = 0;
 | 
Success | 
 NO_ERROR = 0;
 | 
Success | 
 ERROR_INVALID_FUNCTION = 1;
 | 
Invalid function | 
 ERROR_FILE_NOT_FOUND = 2;
 | 
The file cannot be found | 
 ERROR_PATH_NOT_FOUND = 3;
 | 
The path cannot be found | 
 ERROR_TOO_MANY_OPEN_FILES = 4;
 | 
Too many open files | 
 ERROR_ACCESS_DENIED = 5;
 | 
Access is denied | 
 ERROR_INVALID_HANDLE = 6;
 | 
Invalid handle} | 
 ERROR_NOT_ENOUGH_MEMORY = DWORD(8);
 | 
Not enough storage is available to process this command | 
 ERROR_INVALID_ACCESS = 12;
 | 
Invalid access | 
 ERROR_INVALID_DATA = 13;
 | 
The data is invalid | 
 ERROR_OUTOFMEMORY = 14;
 | 
Not enough memory is available | 
 ERROR_INVALID_DRIVE = 15;
 | 
Cannot find the drive specified | 
 ERROR_CURRENT_DIRECTORY = 16;
 | 
Current directory cannot be removed | 
 ERROR_NOT_SAME_DEVICE = 17;
 | 
Cannot move the file to a different disk drive | 
 ERROR_NO_MORE_FILES = 18;
 | 
There are no more files | 
 ERROR_WRITE_PROTECT = 19;
 | 
Media is write protected | 
 ERROR_BAD_UNIT = 20;
 | 
Cannot find the device specified | 
 ERROR_NOT_READY = 21;
 | 
The device is not ready | 
 ERROR_BAD_COMMAND = 22;
 | 
The device does not recognise the command | 
 ERROR_WRITE_FAULT = 29;
 | 
The device cannot be written to | 
 ERROR_READ_FAULT = 30;
 | 
The device cannot be read from | 
 ERROR_GEN_FAILURE = 31;
 | 
The device has failed | 
 ERROR_NOT_SUPPORTED = 50;
 | 
The request is not supported | 
 ERROR_DEV_NOT_EXIST = 55;
 | 
The device does not exist | 
 ERROR_BAD_DEV_TYPE = 66;
 | 
Invalid device type | 
 ERROR_ALREADY_ASSIGNED = 85;
 | 
The device name is already in use | 
 ERROR_INVALID_PASSWORD = 86;
 | 
Invalid pasword | 
 ERROR_INVALID_PARAMETER = 87;
 | 
Invalid parameter | 
 ERROR_SEM_IS_SET = 102;
 | 
The semaphore is in use and cannot be closed | 
 ERROR_OPEN_FAILED = 110;
 | 
The file or device could not be opened | 
 ERROR_CALL_NOT_IMPLEMENTED = 120;
 | 
The function is not currently implemented | 
 ERROR_INSUFFICIENT_BUFFER = 122;
 | 
The buffer passed is too small for the requested data | 
 ERROR_WAIT_NO_CHILDREN = 128;
 | 
There are no child processes to wait for | 
 ERROR_NOT_LOCKED = 158;
 | 
The entry is not locked | 
 ERROR_LOCK_FAILED = 167;
 | 
The lock operation failed | 
 ERROR_ALREADY_EXISTS = 183;
 | 
The file or object already exists | 
 ERROR_ENVVAR_NOT_FOUND = 203;
 | 
The environment variable could not be found | 
 ERROR_LOCKED = 212;
 | 
The entry is already locked | 
 ERROR_MORE_DATA = 234;
 | 
More data is available than the provided buffer | 
 ERROR_WAIT_TIMEOUT = 258;
 | 
The operation timed out | 
 ERROR_NO_MORE_ITEMS = 259;
 | 
No more items available | 
 ERROR_NOT_OWNER = 288;
 | 
The current thread is not the owner | 
 ERROR_OPERATION_ABORTED = DWORD(995);
 | 
The I/O operation has been aborted because of either a thread exit or an application request | 
 ERROR_IO_INCOMPLETE = DWORD(996);
 | 
Overlapped I/O event is not in a signaled state | 
 ERROR_IO_PENDING = DWORD(997);
 | 
Overlapped I/O operation is in progress | 
 ERROR_CAN_NOT_COMPLETE = 1003;
 | 
Cannot complete the function | 
 ERROR_NOT_FOUND = 1168;
 | 
The entry or device was not found | 
 ERROR_INVALID_ACL = DWORD(1336);
 | 
The access control list (ACL) structure is invalid | 
 ERROR_INVALID_SID = DWORD(1337);
 | 
The security Id structure is invalid | 
 ERROR_INVALID_SECURITY_DESCR = DWORD(1338);
 | 
The security descriptor structure is invalid | 
 ERROR_TIMEOUT = 1460;
 | 
The operation returned because the timeout expired | 
 ERROR_FUNCTION_FAILED = 1627;
 | 
The function call failed | 
| Errors below here have no compatibility equivalent | |
 ERROR_NOT_VALID = 1000001;
 | 
The entry or device is not valid | 
 ERROR_NOT_ASSIGNED = 1000002;
 | 
The device is not assigned | 
 ERROR_IN_USE = 1000003;
 | 
The device is in use | 
 ERROR_OPERATION_FAILED = 1000004;
 | 
The operation failed | 
 ERROR_NOT_OPEN = 1000005;
 | 
The file or device is not open | 
 ERROR_ALREADY_OPEN = 1000006;
 | 
The file or device is already open | 
 ERROR_WAIT_ABANDONED = 1000007;
 | 
The operation was abandoned | 
 ERROR_IN_PROGRESS = 1000008;
 | 
An operation is already in progress | 
 ERROR_RUNTIME_ERROR = 1000009;
 | 
A run time occurred | 
 ERROR_EXCEPTION = 1000010;
 | 
An exception occurred | 
 ERROR_NOT_PROCESSED = 1000011;
 | 
The entry has not been processed | 
 ERROR_NOT_COMPLETED = 1000012;
 | 
The entry or operation has not completed | 
 ERROR_NOT_COMPATIBLE = 1000013;
 | 
The entry is not compatible for the operation | 
 ERROR_CANCELLED = 1000014;
 | 
The entry or operation has been cancelled | 
 ERROR_NOT_EXACT = 1000015;
 | 
The result of the operation is not exact | 
 ERROR_ALREADY_OWNER = 1000016;
 | 
The current thread is already the owner | 
 ERROR_UNKNOWN = $FFFFFFFF;
 | 
|
Universal value 
 INVALID_*  INVALID_HANDLE_VALUE = THandle(-1);
 | 
|
 INVALID_FILE_SIZE = DWORD($FFFFFFFF);
 | 
|
 INVALID_SET_FILE_POINTER = DWORD(-1);
 | 
|
 INVALID_FILE_ATTRIBUTES = DWORD(-1);
 | 
File position 
 FILE_*  FILE_BEGIN = 0;
 | 
|
 FILE_CURRENT = 1;
 | 
|
 FILE_END = 2;
 | 
File open/create 
 CREATE_*  CREATE_NEW = 1;
 | 
|
 CREATE_ALWAYS = 2;
 | 
|
 OPEN_EXISTING = 3;
 | 
|
 OPEN_ALWAYS = 4;
 | 
|
 TRUNCATE_EXISTING = 5;
 | 
File creation flag 
 FILE_FLAG_*  FILE_FLAG_WRITE_THROUGH = DWORD($80000000);
 | 
|
 FILE_FLAG_OVERLAPPED = $40000000;
 | 
|
 FILE_FLAG_NO_BUFFERING = $20000000;
 | 
|
 FILE_FLAG_RANDOM_ACCESS = $10000000;
 | 
|
 FILE_FLAG_SEQUENTIAL_SCAN = $08000000;
 | 
|
 FILE_FLAG_DELETE_ON_CLOSE = $04000000;
 | 
|
 FILE_FLAG_BACKUP_SEMANTICS = $02000000;
 | 
|
 FILE_FLAG_POSIX_SEMANTICS = $01000000;
 | 
|
 FILE_FLAG_OPEN_REPARSE_POINT = $00200000;
 | 
|
 FILE_FLAG_OPEN_NO_RECALL = $00100000;
 | 
|
 FILE_FLAG_FIRST_PIPE_INSTANCE = $00080000;
 | 
File attribute 
 FILE_ATTRIBUTE_*  FILE_ATTRIBUTE_READONLY = $00000001;
 | 
|
 FILE_ATTRIBUTE_HIDDEN = $00000002;
 | 
|
 FILE_ATTRIBUTE_SYSTEM = $00000004;
 | 
|
 FILE_ATTRIBUTE_DIRECTORY = $00000010;
 | 
|
 FILE_ATTRIBUTE_ARCHIVE = $00000020;
 | 
|
 FILE_ATTRIBUTE_DEVICE = $00000040;
 | 
|
 FILE_ATTRIBUTE_NORMAL = $00000080;
 | 
|
 FILE_ATTRIBUTE_TEMPORARY = $00000100;
 | 
|
 FILE_ATTRIBUTE_SPARSE_FILE = $00000200;
 | 
|
 FILE_ATTRIBUTE_REPARSE_POINT = $00000400;
 | 
|
 FILE_ATTRIBUTE_COMPRESSED = $00000800;
 | 
|
 FILE_ATTRIBUTE_OFFLINE = $00001000;
 | 
|
 FILE_ATTRIBUTE_NOT_CONTENT_INDEXED = $00002000;
 | 
|
 FILE_ATTRIBUTE_ENCRYPTED = $00004000;
 | 
Filesystem attribute 
 FS_*  FS_CASE_SENSITIVE_SEARCH = $00000001;
 | 
|
 FS_CASE_PRESERVED_NAMES = $00000002;
 | 
|
 FS_UNICODE_ON_DISK = $00000004;
 | 
|
 FS_PERSISTENT_ACLS = $00000008;
 | 
|
 FS_FILE_COMPRESSION = $00000010;
 | 
|
 FS_VOLUME_QUOTAS = $00000020;
 | 
|
 FS_SUPPORTS_SPARSE_FILES = $00000040;
 | 
|
 FS_SUPPORTS_REPARSE_POINTS = $00000080;
 | 
|
 FS_SUPPORTS_REMOTE_STORAGE = $00000100;
 | 
|
 FS_VOLUME_IS_COMPRESSED = $00008000;
 | 
|
 FS_SUPPORTS_OBJECT_IDS = $00010000;
 | 
|
 FS_SUPPORTS_ENCRYPTION = $00020000;
 | 
|
 FS_NAMED_STREAMS = $00040000;
 | 
|
 FS_READ_ONLY_VOLUME = $00080000;
 | 
File access 
 GENERIC_*  GENERIC_READ = DWORD($80000000);
 | 
|
 GENERIC_WRITE = $40000000;
 | 
|
 GENERIC_EXECUTE = $20000000;
 | 
|
 GENERIC_ALL = $10000000;
 | 
File share 
 FILE_SHARE_*  FILE_SHARE_READ = $00000001;
 | 
|
 FILE_SHARE_WRITE = $00000002;
 | 
|
 FILE_SHARE_DELETE = $00000004;
 | 
Timeout 
 INFINITE =*  INFINITE = LongWord(-1);
 | 
  
TLS 
 TLS_*  TLS_OUT_OF_INDEXES = DWORD($FFFFFFFF);
 | 
Wait 
 WAIT_*  WAIT_OBJECT_0 = ERROR_SUCCESS + 0;
 | 
|
 WAIT_ABANDONED = $00000080 + 0;
 | 
STATUS_ABANDONED_WAIT_0 | 
 WAIT_ABANDONED_0 = $00000080 + 0;
 | 
STATUS_ABANDONED_WAIT_0 | 
 WAIT_TIMEOUT = ERROR_WAIT_TIMEOUT;
 | 
|
 WAIT_FAILED = DWORD($FFFFFFFF);
 | 
|
 WAIT_IO_COMPLETION = $000000C0;
 | 
STATUS_USER_APC | 
 MAXIMUM_WAIT_OBJECTS = 64;
 | 
Maximum number of wait objects | 
   
Thread state 
 STILL_*  STILL_ACTIVE = ERROR_NO_MORE_ITEMS;
 | 
   
TimeZone 
 TIME_ZONE_*  TIME_ZONE_ID_INVALID = DWORD($FFFFFFFF);
 | 
Universal key codes 
 KEY_CODE_* | Keyboard key codes are based on the Unicode standard with each key code mapped to the code point for that character (See http://unicode.org or http://unicode-table.com) | |
| Keyboard keymaps map the scan code value to the key code value for the specific keyboard layout and include alternate mappings for Shift and AltGr | |
| Non character codes for keys like Home, End, Arrows, F1..F24, Shift, Caps Lock etc are mapped in the Unicode Private Use Area (E000-F8FF) | |
| These are the values reported in the KeyCode field of the TKeyboardData structure returned by the KeyboardRead function | |
| Control Characters (0000-001F) | |
 KEY_CODE_NONE = $0000;
 | 
0 | 
 KEY_CODE_BACKSPACE = $0008;
 | 
8 | 
 KEY_CODE_TAB = $0009;
 | 
9 | 
 KEY_CODE_ENTER = $000D;
 | 
13 | 
 KEY_CODE_ESCAPE = $001B;
 | 
27 | 
 KEY_CODE_DELETE = $007F;
 | 
127 | 
| Basic Latin Characters (0020-007F) | |
| Punctuation | |
 KEY_CODE_SPACE = $0020;
 | 
32 | 
 KEY_CODE_EXCLAMATION = $0021;
 | 
33 | 
 KEY_CODE_QUOTATION = $0022;
 | 
34 | 
 KEY_CODE_NUMBER = $0023;
 | 
35 (Hash/Pound) | 
 KEY_CODE_DOLLAR = $0024;
 | 
36 | 
 KEY_CODE_PERCENT = $0025;
 | 
37 | 
 KEY_CODE_AMPERSAND = $0026;
 | 
38 | 
 KEY_CODE_APOSTROPHE = $0027;
 | 
39 | 
 KEY_CODE_LEFT_BRACKET = $0028;
 | 
40 | 
 KEY_CODE_RIGHT_BRACKET = $0029;
 | 
41 | 
 KEY_CODE_ASTERISK = $002A;
 | 
42 | 
 KEY_CODE_PLUS = $002B;
 | 
43 | 
 KEY_CODE_COMMA = $002C;
 | 
44 | 
 KEY_CODE_MINUS = $002D;
 | 
45 | 
 KEY_CODE_PERIOD = $002E;
 | 
46 | 
 KEY_CODE_SLASH = $002F;
 | 
47 | 
| Numerals | |
 KEY_CODE_0 = $0030;
 | 
48 | 
 KEY_CODE_1 = $0031;
 | 
49 | 
 KEY_CODE_2 = $0032;
 | 
50 | 
 KEY_CODE_3 = $0033;
 | 
51 | 
 KEY_CODE_4 = $0034;
 | 
52 | 
 KEY_CODE_5 = $0035;
 | 
53 | 
 KEY_CODE_6 = $0036;
 | 
54 | 
 KEY_CODE_7 = $0037;
 | 
55 | 
 KEY_CODE_8 = $0038;
 | 
56 | 
 KEY_CODE_9 = $0039;
 | 
57 | 
| Punctuation | |
 KEY_CODE_COLON = $003A;
 | 
58 | 
 KEY_CODE_SEMICOLON = $003B;
 | 
59 | 
 KEY_CODE_LESSTHAN = $003C;
 | 
60 | 
 KEY_CODE_EQUALS = $003D;
 | 
61 | 
 KEY_CODE_GREATERTHAN = $003E;
 | 
62 | 
 KEY_CODE_QUESTION = $003F;
 | 
63 | 
 KEY_CODE_AT = $0040;
 | 
64 | 
| Capital Characters | |
 KEY_CODE_CAPITAL_A = $0041;
 | 
65 | 
 KEY_CODE_CAPITAL_B = $0042;
 | 
66 | 
 KEY_CODE_CAPITAL_C = $0043;
 | 
67 | 
 KEY_CODE_CAPITAL_D = $0044;
 | 
68 | 
 KEY_CODE_CAPITAL_E = $0045;
 | 
69 | 
 KEY_CODE_CAPITAL_F = $0046;
 | 
70 | 
 KEY_CODE_CAPITAL_G = $0047;
 | 
71 | 
 KEY_CODE_CAPITAL_H = $0048;
 | 
72 | 
 KEY_CODE_CAPITAL_I = $0049;
 | 
73 | 
 KEY_CODE_CAPITAL_J = $004A;
 | 
74 | 
 KEY_CODE_CAPITAL_K = $004B;
 | 
75 | 
 KEY_CODE_CAPITAL_L = $004C;
 | 
76 | 
 KEY_CODE_CAPITAL_M = $004D;
 | 
77 | 
 KEY_CODE_CAPITAL_N = $004E;
 | 
78 | 
 KEY_CODE_CAPITAL_O = $004F;
 | 
79 | 
 KEY_CODE_CAPITAL_P = $0050;
 | 
80 | 
 KEY_CODE_CAPITAL_Q = $0051;
 | 
81 | 
 KEY_CODE_CAPITAL_R= $0052;
 | 
82 | 
 KEY_CODE_CAPITAL_S = $0053;
 | 
83 | 
 KEY_CODE_CAPITAL_T = $0054;
 | 
84 | 
 KEY_CODE_CAPITAL_U = $0055;
 | 
85 | 
 KEY_CODE_CAPITAL_V = $0056;
 | 
86 | 
 KEY_CODE_CAPITAL_W = $0057;
 | 
87 | 
 KEY_CODE_CAPITAL_X = $0058;
 | 
88 | 
 KEY_CODE_CAPITAL_Y = $0059;
 | 
89 | 
 KEY_CODE_CAPITAL_Z = $005A;
 | 
90 | 
| Punctuation | |
 KEY_CODE_LEFT_SQUARE = $005B;
 | 
91 | 
 KEY_CODE_BACKSLASH = $005C;
 | 
92 | 
 KEY_CODE_RIGHT_SQUARE = $005D;
 | 
93 | 
 KEY_CODE_CARET = $005E;
 | 
94 (Circumflex) | 
 KEY_CODE_UNDERSCORE = $005F;
 | 
95 | 
 KEY_CODE_GRAVE = $0060;
 | 
96 | 
| Lowercase Characters | |
 KEY_CODE_A = $0061;
 | 
97 | 
 KEY_CODE_B = $0062;
 | 
98 | 
 KEY_CODE_C = $0063;
 | 
99 | 
 KEY_CODE_D = $0064;
 | 
100 | 
 KEY_CODE_E = $0065;
 | 
101 | 
 KEY_CODE_F = $0066;
 | 
102 | 
 KEY_CODE_G = $0067;
 | 
103 | 
 KEY_CODE_H = $0068;
 | 
104 | 
 KEY_CODE_I = $0069;
 | 
105 | 
 KEY_CODE_J = $006A;
 | 
106 | 
 KEY_CODE_K = $006B;
 | 
107 | 
 KEY_CODE_L = $006C;
 | 
108 | 
 KEY_CODE_M = $006D;
 | 
109 | 
 KEY_CODE_N = $006E;
 | 
110 | 
 KEY_CODE_O = $006F;
 | 
111 | 
 KEY_CODE_P = $0070;
 | 
112 | 
 KEY_CODE_Q = $0071;
 | 
113 | 
 KEY_CODE_R = $0072;
 | 
114 | 
 KEY_CODE_S = $0073;
 | 
115 | 
 KEY_CODE_T = $0074;
 | 
116 | 
 KEY_CODE_U = $0075;
 | 
117 | 
 KEY_CODE_V = $0076;
 | 
118 | 
 KEY_CODE_W = $0077;
 | 
119 | 
 KEY_CODE_X = $0078;
 | 
120 | 
 KEY_CODE_Y = $0079;
 | 
121 | 
 KEY_CODE_Z = $007A;
 | 
122 | 
| Punctuation | |
 KEY_CODE_LEFT_BRACE = $007B;
 | 
123 (Curly Bracket) | 
 KEY_CODE_PIPE = $007C;
 | 
124 (Vertical Bar) | 
 KEY_CODE_RIGHT_BRACE = $007D;
 | 
125 (Curly Bracket) | 
 KEY_CODE_TILDE = $007E;
 | 
126 | 
 KEY_CODE_DELETE 
 | 
(See above) | 
| Latin-1 Supplement Characters (0080-00FF) | |
 KEY_CODE_INVERTED_EXCLAMATION = $00A1;
 | 
|
 KEY_CODE_CENT = $00A2;
 | 
|
 KEY_CODE_POUND = $00A3;
 | 
|
 KEY_CODE_CURRENCY = $00A4;
 | 
|
 KEY_CODE_YEN = $00A5;
 | 
|
 KEY_CODE_BROKEN_BAR = $00A6;
 | 
|
 KEY_CODE_SECTION = $00A7;
 | 
|
 KEY_CODE_DIAERESIS = $00A8;
 | 
|
 KEY_CODE_COPYRIGHT = $00A9;
 | 
|
 KEY_CODE_FEMININE = $00AA;
 | 
|
 KEY_CODE_LEFT_DOUBLE_ANGLE = $00AB;
 | 
|
 KEY_CODE_NOT = $00AC;
 | 
|
 KEY_CODE_REGISTERED = $00AE;
 | 
|
 KEY_CODE_MACRON = $00AF;
 | 
|
 KEY_CODE_DEGREE = $00B0;
 | 
|
 KEY_CODE_PLUS_MINUS = $00B1;
 | 
|
 KEY_CODE_SUPERSCRIPT_2 = $00B2;
 | 
|
 KEY_CODE_SUPERSCRIPT_3 = $00B3;
 | 
|
 KEY_CODE_ACUTE = $00B4;
 | 
|
 KEY_CODE_MICRO = $00B5;
 | 
|
 KEY_CODE_PILCROW = $00B6;
 | 
|
 KEY_CODE_MIDDLE_DOT = $00B7;
 | 
|
 KEY_CODE_CEDILLA = $00B8;
 | 
|
 KEY_CODE_SUPERSCRIPT_1 = $00B9;
 | 
|
 KEY_CODE_MASCULINE = $00BA;
 | 
|
 KEY_CODE_RIGHT_DOUBLE_ANGLE = $00BB;
 | 
|
 KEY_CODE_ONE_QUARTER = $00BC;
 | 
|
 KEY_CODE_ONE_HALF = $00BD;
 | 
|
 KEY_CODE_THREE_QUARTER = $00BE;
 | 
|
 KEY_CODE_INVERTED_QUESTION = $00BF;
 | 
|
 KEY_CODE_CAPITAL_GRAVE_A = $00C0;
 | 
|
 KEY_CODE_CAPITAL_ACUTE_A = $00C1;
 | 
|
 KEY_CODE_CAPITAL_CIRCUMFLEX_A = $00C2;
 | 
|
 KEY_CODE_CAPITAL_TILDE_A = $00C3;
 | 
|
 KEY_CODE_CAPITAL_DIAERESIS_A = $00C4;
 | 
|
 KEY_CODE_CAPITAL_RING_A = $00C5;
 | 
|
 KEY_CODE_CAPITAL_AE = $00C6;
 | 
|
 KEY_CODE_CAPITAL_CEDILLA_C = $00C7;
 | 
|
 KEY_CODE_CAPITAL_GRAVE_E = $00C8;
 | 
|
 KEY_CODE_CAPITAL_ACUTE_E = $00C9;
 | 
|
 KEY_CODE_CAPITAL_CIRCUMFLEX_E = $00CA;
 | 
|
 KEY_CODE_CAPITAL_DIAERESIS_E  = $00CB;
 | 
|
 KEY_CODE_CAPITAL_GRAVE_I = $00CC;
 | 
|
 KEY_CODE_CAPITAL_ACUTE_I = $00CD;
 | 
|
 KEY_CODE_CAPITAL_CIRCUMFLEX_I = $00CE;
 | 
|
 KEY_CODE_CAPITAL_DIAERESIS_I = $00CF;
 | 
|
 KEY_CODE_CAPITAL_ETH = $00D0;
 | 
|
 KEY_CODE_CAPITAL_TILDE_N = $00D1;
 | 
|
 KEY_CODE_CAPITAL_GRAVE_O = $00D2;
 | 
|
 KEY_CODE_CAPITAL_ACUTE_O = $00D3;
 | 
|
 KEY_CODE_CAPITAL_CIRCUMFLEX_O = $00D4;
 | 
|
 KEY_CODE_CAPITAL_TILDE_O = $00D5;
 | 
|
 KEY_CODE_CAPITAL_DIAERESIS_O = $00D6;
 | 
|
 KEY_CODE_MULTIPLY = $00D7;
 | 
|
 KEY_CODE_CAPITAL_STROKE_O = $00D8;
 | 
|
 KEY_CODE_CAPITAL_GRAVE_U = $00D9;
 | 
|
 KEY_CODE_CAPITAL_ACUTE_U = $00DA;
 | 
|
 KEY_CODE_CAPITAL_CIRCUMFLEX_U = $00DB;
 | 
|
 KEY_CODE_CAPITAL_DIAERESIS_U = $00DC;
 | 
|
 KEY_CODE_CAPITAL_ACUTE_Y = $00DD;
 | 
|
 KEY_CODE_CAPITAL_THORN = $00DE;
 | 
|
 KEY_CODE_SHARP_S = $00DF;
 | 
|
 KEY_CODE_GRAVE_A = $00E0;
 | 
|
 KEY_CODE_ACUTE_A = $00E1;
 | 
|
 KEY_CODE_CIRCUMFLEX_A = $00E2;
 | 
|
 KEY_CODE_TILDE_A = $00E3;
 | 
|
 KEY_CODE_DIAERESIS_A = $00E4;
 | 
|
 KEY_CODE_RING_A = $00E5;
 | 
|
 KEY_CODE_AE = $00E6;
 | 
|
 KEY_CODE_CEDILLA_C = $00E7;
 | 
|
 KEY_CODE_GRAVE_E = $00E8;
 | 
|
 KEY_CODE_ACUTE_E = $00E9;
 | 
|
 KEY_CODE_CIRCUMFLEX_E = $00EA;
 | 
|
 KEY_CODE_DIAERESIS_E = $00EB;
 | 
|
 KEY_CODE_GRAVE_I = $00EC;
 | 
|
 KEY_CODE_ACUTE_I = $00ED;
 | 
|
 KEY_CODE_CIRCUMFLEX_I = $00EE;
 | 
|
 KEY_CODE_DIAERESIS_I = $00EF;
 | 
|
 KEY_CODE_ETH = $00F0;
 | 
|
 KEY_CODE_TILDE_N = $00F1;
 | 
|
 KEY_CODE_GRAVE_O = $00F2;
 | 
|
 KEY_CODE_ACUTE_O = $00F3;
 | 
|
 KEY_CODE_CIRCUMFLEX_O = $00F4;
 | 
|
 KEY_CODE_TILDE_O = $00F5;
 | 
|
 KEY_CODE_DIAERESIS_O = $00F6;
 | 
|
 KEY_CODE_DIVISION = $00F7;
 | 
|
 KEY_CODE_STROKE_O = $00F8;
 | 
|
 KEY_CODE_GRAVE_U = $00F9;
 | 
|
 KEY_CODE_ACUTE_U = $00FA;
 | 
|
 KEY_CODE_CIRCUMFLEX_U = $00FB;
 | 
|
 KEY_CODE_DIAERESIS_U = $00FC;
 | 
|
 KEY_CODE_ACUTE_Y = $00FD;
 | 
|
 KEY_CODE_THORN  = $00FE;
 | 
|
 KEY_CODE_DIAERESIS_Y = $00FF;
 | 
|
| General Punctuation (2000-206F) | |
 KEY_CODE_LEFT_QUOTE = $2018;
 | 
|
 KEY_CODE_RIGHT_QUOTE = $2019;
 | 
|
| Currency Symbols (20A0-20CF) | |
 KEY_CODE_EURO = $20AC;
 | 
|
| Private Area (E000-F8FF) | |
| Non Character Codes | |
 KEY_CODE_CAPSLOCK = $E000;
 | 
|
 KEY_CODE_F1 = $E001;
 | 
|
 KEY_CODE_F2 = $E002;
 | 
|
 KEY_CODE_F3 = $E003;
 | 
|
 KEY_CODE_F4 = $E004;
 | 
|
 KEY_CODE_F5  = $E005;
 | 
|
 KEY_CODE_F6  = $E006; 
 | 
|
 KEY_CODE_F7 = $E007;
 | 
|
 KEY_CODE_F8 = $E008;
 | 
|
 KEY_CODE_F9 = $E009;
 | 
|
 KEY_CODE_F10 = $E00A;
 | 
|
 KEY_CODE_F11 = $E00B;
 | 
|
 KEY_CODE_F12 = $E00C;
 | 
|
 KEY_CODE_PRINTSCREEN = $E00D;
 | 
|
 KEY_CODE_SCROLLLOCK = $E00E;
 | 
|
 KEY_CODE_PAUSE = $E00F;
 | 
|
 KEY_CODE_INSERT = $E010;
 | 
|
 KEY_CODE_HOME = $E011;
 | 
|
 KEY_CODE_PAGEUP = $E012;
 | 
|
 KEY_CODE_END = $E013;
 | 
|
 KEY_CODE_PAGEDN = $E014;
 | 
|
 KEY_CODE_RIGHT_ARROW = $E015;
 | 
|
 KEY_CODE_LEFT_ARROW = $E016;
 | 
|
 KEY_CODE_DOWN_ARROW = $E017;
 | 
|
 KEY_CODE_UP_ARROW = $E018;
 | 
|
 KEY_CODE_NUMLOCK = $E019;
 | 
|
 KEY_CODE_APPLICATION = $E01A;
 | 
|
 KEY_CODE_POWER = $E01B;
 | 
|
 KEY_CODE_F13 = $E01C;
 | 
|
 KEY_CODE_F14 = $E01D;
 | 
|
 KEY_CODE_F15 = $E01E;
 | 
|
 KEY_CODE_F16 = $E01F;
 | 
|
 KEY_CODE_F17 = $E020;
 | 
|
 KEY_CODE_F18 = $E021;
 | 
|
 KEY_CODE_F19 = $E022;
 | 
|
 KEY_CODE_F20 = $E023;
 | 
|
 KEY_CODE_F21 = $E024;
 | 
|
 KEY_CODE_F22 = $E025;
 | 
|
 KEY_CODE_F23 = $E026;
 | 
|
 KEY_CODE_F24 = $E027;
 | 
|
 KEY_CODE_EXECUTE = $E028;
 | 
|
 KEY_CODE_HELP = $E029;
 | 
|
 KEY_CODE_MENU = $E02A;
 | 
|
 KEY_CODE_SELECT = $E02B;
 | 
|
 KEY_CODE_STOP = $E02C;
 | 
|
 KEY_CODE_AGAIN = $E02D;
 | 
|
 KEY_CODE_UNDO = $E02E;
 | 
|
 KEY_CODE_CUT = $E02F;
 | 
|
 KEY_CODE_COPY = $E030;
 | 
|
 KEY_CODE_PASTE = $E031;
 | 
|
 KEY_CODE_FIND = $E032;
 | 
|
 KEY_CODE_MUTE = $E033;
 | 
|
 KEY_CODE_VOLUMEUP = $E034;
 | 
|
 KEY_CODE_VOLUMEDOWN = $E035;
 | 
|
 KEY_CODE_LOCKING_CAPSLOCK = $E036;
 | 
|
 KEY_CODE_LOCKING_NUMLOCK = $E037;
 | 
|
 KEY_CODE_LOCKING_SCROLLLOCK = $E038;
 | 
|
 KEY_CODE_INTERNATIONAL1 = $E039;
 | 
|
 KEY_CODE_INTERNATIONAL2 = $E03A;
 | 
|
 KEY_CODE_INTERNATIONAL3 = $E03B;
 | 
|
 KEY_CODE_INTERNATIONAL4 = $E03C;
 | 
|
 KEY_CODE_INTERNATIONAL5 = $E03D;
 | 
|
 KEY_CODE_INTERNATIONAL6 = $E03E;
 | 
|
 KEY_CODE_INTERNATIONAL7 = $E03F;
 | 
|
 KEY_CODE_INTERNATIONAL8 = $E040;
 | 
|
 KEY_CODE_INTERNATIONAL9 = $E041;
 | 
|
 KEY_CODE_LANG1 = $E042;
 | 
|
 KEY_CODE_LANG2 = $E043;
 | 
|
 KEY_CODE_LANG3 = $E044;
 | 
|
 KEY_CODE_LANG4 = $E045;
 | 
|
 KEY_CODE_LANG5 = $E046;
 | 
|
 KEY_CODE_LANG6 = $E047;
 | 
|
 KEY_CODE_LANG7 = $E048;
 | 
|
 KEY_CODE_LANG8 = $E049;
 | 
|
 KEY_CODE_LANG9 = $E04A;
 | 
|
 KEY_CODE_ALT_ERASE = $E04B;
 | 
|
 KEY_CODE_SYSREQ = $E04C;
 | 
|
 KEY_CODE_CANCEL = $E04D;
 | 
|
 KEY_CODE_CLEAR = $E04E;
 | 
|
 KEY_CODE_PRIOR = $E04F;
 | 
|
 KEY_CODE_RETURN = $E050;
 | 
|
 KEY_CODE_SEPARATOR = $E051;
 | 
|
 KEY_CODE_OUT = $E052;
 | 
|
 KEY_CODE_OPER = $E053;
 | 
|
 KEY_CODE_CLEAR_AGAIN = $E054;
 | 
|
 KEY_CODE_CRSEL_PROPS = $E055;
 | 
|
 KEY_CODE_EXSEL = $E056;
 | 
|
 KEY_CODE_00 = $E057;
 | 
|
 KEY_CODE_000 = $E058;
 | 
|
 KEY_CODE_THOUSANDS_SEPARATOR = $E059;
 | 
|
 KEY_CODE_DECIMAL_SEPARATOR = $E05A;
 | 
|
 KEY_CODE_CURRENCY_UNIT = $E05B;
 | 
|
 KEY_CODE_CURRENCY_SUBUNIT = $E05C;
 | 
|
 KEY_CODE_XOR = $E05D;
 | 
|
 KEY_CODE_MEM_STORE = $E05E;
 | 
|
 KEY_CODE_MEM_RECALL = $E05F;
 | 
|
 KEY_CODE_MEM_CLEAR = $E060;
 | 
|
 KEY_CODE_MEM_ADD = $E061;
 | 
|
 KEY_CODE_MEM_SUBTRACT = $E062;
 | 
|
 KEY_CODE_MEM_MULTIPLY = $E063;
 | 
|
 KEY_CODE_MEM_DIVIDE = $E064;
 | 
|
 KEY_CODE_CLEAR_ENTRY = $E065;
 | 
|
 KEY_CODE_BINARY = $E066;
 | 
|
 KEY_CODE_OCTAL = $E067;
 | 
|
 KEY_CODE_DECIMAL = $E068;
 | 
|
 KEY_CODE_HEX = $E069;
 | 
|
 KEY_CODE_CTRL = $E06A;
 | 
|
 KEY_CODE_SHIFT = $E06B;
 | 
|
 KEY_CODE_ALT = $E06C;
 | 
|
 KEY_CODE_GUI = $E06D;
 | 
|
 KEY_CODE_DOUBLE_AMPERSAND = $E06E;
 | 
|
 KEY_CODE_DOUBLE_PIPE = $E06F;
 | 
|
 KEY_CODE_CENTER = $E070;
 | 
|
 KEY_CODE_TRANSLATE_START = $0080;
 | 
Key codes below this are direct characters in all code pages | 
 KEY_CODE_PRIVATE_START = $E000;
 | 
Key codes in this range are private area mappings for non character keys | 
 KEY_CODE_PRIVATE_END = $F8FF;
 | 
|
Universal scan codes 
 SCAN_CODE_* | Keyboard scan codes are based on the USB HID Usages (See Section 10 of the Universal Serial Bus HID Usage Tables v1.12) | |
| These are the values reported in the ScanCode field of the TKeyboardData structure returned by the KeyboardRead function | |
| Any keyboard driver supporting legacy keyboards (eg PC/AT or PS/2) should translate the reported codes to be compatible with this set | |
 SCAN_CODE_NONE = 0;
 | 
Reserved (no event indicated) | 
 SCAN_CODE_ROLLOVER = 1;
 | 
Keyboard ErrorRollOver | 
 SCAN_CODE_POSTFAIL = 2;
 | 
Keyboard POSTFail | 
 SCAN_CODE_ERROR = 3;
 | 
Keyboard ErrorUndefined | 
 SCAN_CODE_A = 4;
 | 
Keyboard a or A | 
 SCAN_CODE_B = 5;
 | 
Keyboard b or B | 
 SCAN_CODE_C = 6;
 | 
Keyboard c or C | 
 SCAN_CODE_D = 7;
 | 
Keyboard d or D | 
 SCAN_CODE_E = 8;
 | 
Keyboard e or E | 
 SCAN_CODE_F = 9;
 | 
Keyboard f or F | 
 SCAN_CODE_G = 10;
 | 
Keyboard g or G | 
 SCAN_CODE_H = 11;
 | 
Keyboard h or H | 
 SCAN_CODE_I = 12;
 | 
Keyboard i or I | 
 SCAN_CODE_J = 13;
 | 
Keyboard j or J | 
 SCAN_CODE_K = 14;
 | 
Keyboard k or K | 
 SCAN_CODE_L = 15;
 | 
Keyboard l or L | 
 SCAN_CODE_M = 16;
 | 
Keyboard m or M | 
 SCAN_CODE_N = 17;
 | 
Keyboard n or N | 
 SCAN_CODE_O = 18;
 | 
Keyboard o or O | 
 SCAN_CODE_P = 19;
 | 
Keyboard p or P | 
 SCAN_CODE_Q = 20;
 | 
Keyboard q or Q | 
 SCAN_CODE_R = 21;
 | 
Keyboard r or R | 
 SCAN_CODE_S = 22;
 | 
Keyboard s or S | 
 SCAN_CODE_T = 23;
 | 
Keyboard t or T | 
 SCAN_CODE_U = 24;
 | 
Keyboard u or U | 
 SCAN_CODE_V = 25;
 | 
Keyboard v or V | 
 SCAN_CODE_W = 26;
 | 
Keyboard w or W | 
 SCAN_CODE_X = 27;
 | 
Keyboard x or X | 
 SCAN_CODE_Y = 28;
 | 
Keyboard y or Y | 
 SCAN_CODE_Z = 29;
 | 
Keyboard z or Z | 
 SCAN_CODE_1 = 30;
 | 
Keyboard 1 or ! | 
 SCAN_CODE_2 = 31;
 | 
Keyboard 2 or @ | 
 SCAN_CODE_3 = 32;
 | 
Keyboard 3 or # | 
 SCAN_CODE_4 = 33;
 | 
Keyboard 4 or $ | 
 SCAN_CODE_5 = 34;
 | 
Keyboard 5 or % | 
 SCAN_CODE_6 = 35;
 | 
Keyboard 6 or ^ | 
 SCAN_CODE_7 = 36;
 | 
Keyboard 7 or & | 
 SCAN_CODE_8 = 37;
 | 
Keyboard 8 or * | 
 SCAN_CODE_9 = 38;
 | 
Keyboard 9 or ( | 
 SCAN_CODE_0 = 39;
 | 
Keyboard 0 or ) | 
 SCAN_CODE_ENTER = 40;
 | 
Keyboard Enter | 
 SCAN_CODE_ESCAPE = 41;
 | 
Keyboard Escape | 
 SCAN_CODE_BACKSPACE = 42;
 | 
Keyboard Backspace | 
 SCAN_CODE_TAB = 43;
 | 
Keyboard Tab | 
 SCAN_CODE_SPACE = 44;
 | 
Keyboard Spacebar | 
 SCAN_CODE_MINUS = 45;
 | 
Keyboard - or _ | 
 SCAN_CODE_EQUALS = 46;
 | 
Keyboard = or + | 
 SCAN_CODE_LEFT_SQUARE = 47;
 | 
Keyboard [ or Left Brace | 
 SCAN_CODE_RIGHT_SQUARE = 48;
 | 
Keyboard ] or Right Brace | 
 SCAN_CODE_BACKSLASH = 49;
 | 
Keyboard \ or Keypad Pipe | 
 SCAN_CODE_NONUS_NUMBER = 50;
 | 
Keyboard Non-US # and ~ | 
 SCAN_CODE_SEMICOLON = 51;
 | 
Keyboard ; or : | 
 SCAN_CODE_APOSTROPHE = 52;
 | 
Keyboard ' or " | 
 SCAN_CODE_GRAVE = 53;
 | 
Keyboard ` or ~ | 
 SCAN_CODE_COMMA = 54;
 | 
Keyboard , or < | 
 SCAN_CODE_PERIOD = 55;
 | 
Keyboard . or > | 
 SCAN_CODE_SLASH = 56;
 | 
Keyboard / or ? | 
 SCAN_CODE_CAPSLOCK = 57;
 | 
Keyboard Caps Lock | 
 SCAN_CODE_F1 = 58;
 | 
Keyboard F1 | 
 SCAN_CODE_F2 = 59;
 | 
Keyboard F2 | 
 SCAN_CODE_F3 = 60;
 | 
Keyboard F3 | 
 SCAN_CODE_F4 = 61;
 | 
Keyboard F4 | 
 SCAN_CODE_F5 = 62;
 | 
Keyboard F5 | 
 SCAN_CODE_F6 = 63;
 | 
Keyboard F6 | 
 SCAN_CODE_F7 = 64;
 | 
Keyboard F7 | 
 SCAN_CODE_F8 = 65;
 | 
Keyboard F8 | 
 SCAN_CODE_F9 = 66;
 | 
Keyboard F9 | 
 SCAN_CODE_F10 = 67;
 | 
Keyboard F10 | 
 SCAN_CODE_F11 = 68;
 | 
Keyboard F11 | 
 SCAN_CODE_F12 = 69;
 | 
Keyboard F12 | 
 SCAN_CODE_PRINTSCREEN = 70;
 | 
Keyboard Print Screen | 
 SCAN_CODE_SCROLLLOCK = 71;
 | 
Keyboard Scroll Lock | 
 SCAN_CODE_PAUSE = 72;
 | 
Keyboard Pause | 
 SCAN_CODE_INSERT = 73;
 | 
Keyboard Insert | 
 SCAN_CODE_HOME = 74;
 | 
Keyboard Home | 
 SCAN_CODE_PAGEUP = 75;
 | 
Keyboard PageUp | 
 SCAN_CODE_DELETE = 76;
 | 
Keyboard Delete | 
 SCAN_CODE_END = 77;
 | 
Keyboard End | 
 SCAN_CODE_PAGEDN = 78;
 | 
Keyboard PageDn | 
 SCAN_CODE_RIGHT_ARROW = 79;
 | 
Keyboard Right Arrow | 
 SCAN_CODE_LEFT_ARROW = 80;
 | 
Keyboard Left Arrow | 
 SCAN_CODE_DOWN_ARROW = 81;
 | 
Keyboard Down Arrow | 
 SCAN_CODE_UP_ARROW = 82;
 | 
Keyboard Up Arrow | 
 SCAN_CODE_NUMLOCK = 83;
 | 
Keyboard Num Lock | 
 SCAN_CODE_KEYPAD_SLASH = 84;
 | 
Keypad / | 
 SCAN_CODE_KEYPAD_ASTERISK = 85;
 | 
Keypad * | 
 SCAN_CODE_KEYPAD_MINUS = 86;
 | 
Keypad - | 
 SCAN_CODE_KEYPAD_PLUS = 87;
 | 
Keypad + | 
 SCAN_CODE_KEYPAD_ENTER = 88;
 | 
Keypad Enter | 
 SCAN_CODE_KEYPAD_1 = 89;
 | 
Keypad 1 and End | 
 SCAN_CODE_KEYPAD_2 = 90;
 | 
Keypad 2 and Down Arrow | 
 SCAN_CODE_KEYPAD_3 = 91;
 | 
Keypad 3 and PageDn | 
 SCAN_CODE_KEYPAD_4 = 92;
 | 
Keypad 4 and Left Arrow | 
 SCAN_CODE_KEYPAD_5 = 93;
 | 
Keypad 5 and Center | 
 SCAN_CODE_KEYPAD_6 = 94;
 | 
Keypad 6 and Right Arrow | 
 SCAN_CODE_KEYPAD_7 = 95;
 | 
Keypad 7 and Home | 
 SCAN_CODE_KEYPAD_8 = 96;
 | 
Keypad 8 and Up Arrow | 
 SCAN_CODE_KEYPAD_9 = 97;
 | 
Keypad 9 and PageUp | 
 SCAN_CODE_KEYPAD_0 = 98;
 | 
Keypad 0 and Insert | 
 SCAN_CODE_KEYPAD_PERIOD = 99;
 | 
Keypad . and Delete | 
 SCAN_CODE_NONUS_BACKSLASH = 100;
 | 
Keyboard Non-US \ and Keypad Pipe | 
 SCAN_CODE_APPLICATION = 101;
 | 
Keyboard Application | 
 SCAN_CODE_POWER = 102;
 | 
Keyboard Power | 
 SCAN_CODE_KEYPAD_EQUALS = 103;
 | 
Keypad = | 
 SCAN_CODE_F13 = 104;
 | 
Keyboard F13 | 
 SCAN_CODE_F14 = 105;
 | 
Keyboard F14 | 
 SCAN_CODE_F15 = 106;
 | 
Keyboard F15 | 
 SCAN_CODE_F16 = 107;
 | 
Keyboard F16 | 
 SCAN_CODE_F17 = 108;
 | 
Keyboard F17 | 
 SCAN_CODE_F18 = 109;
 | 
Keyboard F18 | 
 SCAN_CODE_F19 = 110;
 | 
Keyboard F19 | 
 SCAN_CODE_F20 = 111;
 | 
Keyboard F20 | 
 SCAN_CODE_F21 = 112;
 | 
Keyboard F21 | 
 SCAN_CODE_F22 = 113;
 | 
Keyboard F22 | 
 SCAN_CODE_F23 = 114;
 | 
Keyboard F23 | 
 SCAN_CODE_F24 = 115;
 | 
Keyboard F24 | 
 SCAN_CODE_EXECUTE = 116;
 | 
Keyboard Execute | 
 SCAN_CODE_HELP = 117;
 | 
Keyboard Help | 
 SCAN_CODE_MENU = 118;
 | 
Keyboard Menu | 
 SCAN_CODE_SELECT = 119;
 | 
Keyboard Select | 
 SCAN_CODE_STOP = 120;
 | 
Keyboard Stop | 
 SCAN_CODE_AGAIN = 121;
 | 
Keyboard Again | 
 SCAN_CODE_UNDO = 122;
 | 
Keyboard Undo | 
 SCAN_CODE_CUT = 123;
 | 
Keyboard Cut | 
 SCAN_CODE_COPY = 124;
 | 
Keyboard Copy | 
 SCAN_CODE_PASTE = 125;
 | 
Keyboard Paste | 
 SCAN_CODE_FIND = 126;
 | 
Keyboard Find | 
 SCAN_CODE_MUTE = 127;
 | 
Keyboard Mute | 
 SCAN_CODE_VOLUMEUP = 128;
 | 
Keyboard Volume Up | 
 SCAN_CODE_VOLUMEDN = 129;
 | 
Keyboard Volume Down | 
 SCAN_CODE_LOCKING_CAPSLOCK = 130;
 | 
Keyboard Locking Caps Lock | 
 SCAN_CODE_LOCKING_NUMLOCK = 131;
 | 
Keyboard Locking Num Lock | 
 SCAN_CODE_LOCKING_SCROLLLOCK = 132;
 | 
Keyboard Locking Scroll Lock | 
 SCAN_CODE_KEYPAD_COMMA = 133;
 | 
Keypad Comma | 
 SCAN_CODE_KEYPAD_EQUAL_SIGN = 134;
 | 
Keypad Equal Sign | 
 SCAN_CODE_INTERNATIONAL1 = 135;
 | 
Keyboard International1 | 
 SCAN_CODE_INTERNATIONAL2 = 136;
 | 
Keyboard International2 | 
 SCAN_CODE_INTERNATIONAL3 = 137;
 | 
Keyboard International3 | 
 SCAN_CODE_INTERNATIONAL4 = 138;
 | 
Keyboard International4 | 
 SCAN_CODE_INTERNATIONAL5 = 139;
 | 
Keyboard International5 | 
 SCAN_CODE_INTERNATIONAL6 = 140;
 | 
Keyboard International6 | 
 SCAN_CODE_INTERNATIONAL7 = 141;
 | 
Keyboard International7 | 
 SCAN_CODE_INTERNATIONAL8 = 142;
 | 
Keyboard International8 | 
 SCAN_CODE_INTERNATIONAL9 = 143;
 | 
Keyboard International9 | 
 SCAN_CODE_LANG1 = 144;
 | 
Keyboard LANG1 | 
 SCAN_CODE_LANG2 = 145;
 | 
Keyboard LANG2 | 
 SCAN_CODE_LANG3 = 146;
 | 
Keyboard LANG3 | 
 SCAN_CODE_LANG4 = 147;
 | 
Keyboard LANG4 | 
 SCAN_CODE_LANG5 = 148;
 | 
Keyboard LANG5 | 
 SCAN_CODE_LANG6 = 149;
 | 
Keyboard LANG6 | 
 SCAN_CODE_LANG7 = 150;
 | 
Keyboard LANG7 | 
 SCAN_CODE_LANG8 = 151;
 | 
Keyboard LANG8 | 
 SCAN_CODE_LANG9 = 152;
 | 
Keyboard LANG9 | 
 SCAN_CODE_ALT_ERASE = 153;
 | 
Keyboard Alternate Erase | 
 SCAN_CODE_SYSREQ = 154;
 | 
Keyboard SysReq/Attention | 
 SCAN_CODE_CANCEL = 155;
 | 
Keyboard Cancel | 
 SCAN_CODE_CLEAR = 156;
 | 
Keyboard Clear | 
 SCAN_CODE_PRIOR = 157;
 | 
Keyboard Prior | 
 SCAN_CODE_RETURN = 158;
 | 
Keyboard Return | 
 SCAN_CODE_SEPARATOR = 159;
 | 
Keyboard Separator | 
 SCAN_CODE_OUT = 160;
 | 
Keyboard Out | 
 SCAN_CODE_OPER = 161;
 | 
Keyboard Oper | 
 SCAN_CODE_CLEAR_AGAIN = 162;
 | 
Keyboard Clear/Again | 
 SCAN_CODE_CRSEL_PROPS = 163;
 | 
Keyboard CrSel/Props | 
 SCAN_CODE_EXSEL = 164;
 | 
Keyboard ExSel | 
| Codes 165 to 175 Reserved | |
 SCAN_CODE_KEYPAD_00 = 176;
 | 
Keypad 00 | 
 SCAN_CODE_KEYPAD_000 = 177;
 | 
Keypad 000 | 
 SCAN_CODE_THOUSANDS_SEPARATOR = 178;
 | 
Thousands Separator | 
 SCAN_CODE_DECIMAL_SEPARATOR = 179;
 | 
Decimal Separator | 
 SCAN_CODE_CURRENCY_UNIT = 180;
 | 
Currency Unit | 
 SCAN_CODE_CURRENCY_SUBUNIT = 181;
 | 
Currenct Sub-unit | 
 SCAN_CODE_KEYPAD_LEFT_BRACKET = 182;
 | 
Keypad ( | 
 SCAN_CODE_KEYPAD_RIGHT_BRACKET = 183;
 | 
Keypad ) | 
 SCAN_CODE_KEYPAD_LEFT_BRACE = 184;
 | 
Keypad Left Brace | 
 SCAN_CODE_KEYPAD_RIGHT_BRACE = 185;
 | 
Keypad Right Brace | 
 SCAN_CODE_KEYPAD_TAB = 186;
 | 
Keypad Tab | 
 SCAN_CODE_KEYPAD_BACKSPACE = 187;
 | 
Keypad Backspace | 
 SCAN_CODE_KEYPAD_A = 188;
 | 
Keypad A | 
 SCAN_CODE_KEYPAD_B = 189;
 | 
Keypad B | 
 SCAN_CODE_KEYPAD_C = 190;
 | 
Keypad C | 
 SCAN_CODE_KEYPAD_D = 191;
 | 
Keypad D | 
 SCAN_CODE_KEYPAD_E = 192;
 | 
Keypad E | 
 SCAN_CODE_KEYPAD_F = 193;
 | 
Keypad F | 
 SCAN_CODE_KEYPAD_XOR = 194;
 | 
Keypad XOR | 
 SCAN_CODE_KEYPAD_CARET = 195;
 | 
Keypad ^ | 
 SCAN_CODE_KEYPAD_PERCENT = 196;
 | 
Keypad % | 
 SCAN_CODE_KEYPAD_LESSTHAN = 197;
 | 
Keypad < | 
 SCAN_CODE_KEYPAD_GREATERTHAN = 198;
 | 
Keypad > | 
 SCAN_CODE_KEYPAD_AMPERSAND = 199;
 | 
Keypad & | 
 SCAN_CODE_KEYPAD_DOUBLE_AMPERSAND = 200;
 | 
Keypad && | 
 SCAN_CODE_KEYPAD_PIPE = 201;
 | 
Keypad Pipe | 
 SCAN_CODE_KEYPAD_DOUBLE_PIPE = 202;
 | 
Keypad Double Pipe | 
 SCAN_CODE_KEYPAD_COLON = 203;
 | 
Keypad : | 
 SCAN_CODE_KEYPAD_NUMBER = 204;
 | 
Keypad # | 
 SCAN_CODE_KEYPAD_SPACE = 205;
 | 
Keypad Space | 
 SCAN_CODE_KEYPAD_AT = 206;
 | 
Keypad @ | 
 SCAN_CODE_KEYPAD_EXCLAMATION = 207;
 | 
Keypad ! | 
 SCAN_CODE_KEYPAD_MEM_STORE = 208;
 | 
Keypad Memory Store | 
 SCAN_CODE_KEYPAD_MEM_RECALL = 209;
 | 
Keypad Memory Recall | 
 SCAN_CODE_KEYPAD_MEM_CLEAR = 210;
 | 
Keypad Memory Clear | 
 SCAN_CODE_KEYPAD_MEM_ADD = 211;
 | 
Keypad Memory Add | 
 SCAN_CODE_KEYPAD_MEM_SUB = 212;
 | 
Keypad Memory Subtract | 
 SCAN_CODE_KEYPAD_MEM_MULTIPLY = 213;
 | 
Keypad Memory Multiply | 
 SCAN_CODE_KEYPAD_MEM_DIVIDE = 214;
 | 
Keypad Memory Divide | 
 SCAN_CODE_KEYPAD_PLUS_MINUS = 215;
 | 
Keypad +/- | 
 SCAN_CODE_KEYPAD_CLEAR = 216;
 | 
Keypad Clear | 
 SCAN_CODE_KEYPAD_CLEAR_ENTRY = 217;
 | 
Keypad Clear Entry | 
 SCAN_CODE_KEYPAD_BINARY = 218;
 | 
Keypad Binary | 
 SCAN_CODE_KEYPAD_OCTAL = 219;
 | 
Keypad Octal | 
 SCAN_CODE_KEYPAD_DECIMAL = 220;
 | 
Keypad Decimal | 
 SCAN_CODE_KEYPAD_HEX = 221;
 | 
Keypad Hexadecimal | 
| Codes 222 to 223 Reserved | |
 SCAN_CODE_LEFT_CTRL = 224;
 | 
Keyboard LeftControl | 
 SCAN_CODE_LEFT_SHIFT = 225;
 | 
Keyboard LeftShift | 
 SCAN_CODE_LEFT_ALT = 226;
 | 
Keyboard LeftAlt | 
 SCAN_CODE_LEFT_GUI = 227;
 | 
Keyboard Left GUI | 
 SCAN_CODE_RIGHT_CTRL = 228;
 | 
Keyboard RightControl | 
 SCAN_CODE_RIGHT_SHIFT = 229;
 | 
Keyboard RightShift | 
 SCAN_CODE_RIGHT_ALT = 230;
 | 
Keyboard RightAlt | 
 SCAN_CODE_RIGHT_GUI = 231;
 | 
Keyboard Right GUI | 
| Codes 232 to 65535 Reserved | |
 SCAN_CODE_RESERVED_255 = 255;
 | 
Reserved | 
| Alternate names for above | |
 SCAN_CODE_EXCLAMATION = 30;
 | 
Keyboard 1 or ! | 
 SCAN_CODE_AT = 31;
 | 
Keyboard 2 or @ | 
 SCAN_CODE_NUMBER = 32;
 | 
Keyboard 3 or # | 
 SCAN_CODE_CURRENCY = 33;
 | 
Keyboard 4 or $ | 
 SCAN_CODE_PERCENT = 34;
 | 
Keyboard 5 or % | 
 SCAN_CODE_CARET = 35;
 | 
Keyboard 6 or ^ | 
 SCAN_CODE_AMPERSAND = 36;
 | 
Keyboard 7 or & | 
 SCAN_CODE_ASTERISK = 37;
 | 
Keyboard 8 or * | 
 SCAN_CODE_LEFT_BRACKET = 38;
 | 
Keyboard 9 or ( | 
 SCAN_CODE_RIGHT_BRACKET = 39;
 | 
Keyboard 0 or ) | 
 SCAN_CODE_DASH = 45;
 | 
Keyboard - or _ | 
 SCAN_CODE_UNDERSCORE = 45;
 | 
Keyboard - or _ | 
 SCAN_CODE_PLUS = 46;
 | 
Keyboard = or + | 
 SCAN_CODE_LEFT_BRACE = 47;
 | 
Keyboard [ or Left Brace | 
 SCAN_CODE_RIGHT_BRACE = 48;
 | 
Keyboard ] or Right Brace | 
 SCAN_CODE_PIPE = 49;
 | 
Keyboard \ or Keypad Pipe | 
 SCAN_CODE_NONUS_TILDE = 50;
 | 
Keyboard Non-US # and ~ | 
 SCAN_CODE_COLON = 51;
 | 
Keyboard ; or : | 
 SCAN_CODE_QUOTATION = 52;
 | 
Keyboard ' or " | 
 SCAN_CODE_TILDE = 53;
 | 
Keyboard ` or ~ | 
 SCAN_CODE_LESSTHAN = 54;
 | 
Keyboard , or < | 
 SCAN_CODE_GREATERTHAN = 55;
 | 
Keyboard . or > | 
 SCAN_CODE_QUESTION = 56;
 | 
Keyboard / or ? | 
 SCAN_CODE_ALTGR = SCAN_CODE_RIGHT_ALT;
 | 
Keyboard RightAlt | 
 SCAN_CODE_KEYPAD_FIRST = SCAN_CODE_NUMLOCK;
 | 
|
 SCAN_CODE_KEYPAD_LAST = SCAN_CODE_KEYPAD_PERIOD;
 | 
|
Universal color 
 COLOR_* | Basic 32 bit RGB colors (8 bit Transparency, 8 bit Red, 8 bit Green, 8 bit Blue) | |
 COLOR_NONE = $00000000;
 | 
|
 COLOR_BLACK = $FF000000;
 | 
|
 COLOR_RED = $FFFF0000;
 | 
|
 COLOR_ORANGE = $FFFF8500;
 | 
|
 COLOR_LEAFGREEN = $FF009900;
 | 
|
 COLOR_GREEN = $FF00FF00;
 | 
|
 COLOR_YELLOW = $FFFFFF00;
 | 
|
 COLOR_DARKGREEN = $FF254117;
 | 
|
 COLOR_DARKGRAY = $FF595959;
 | 
|
 COLOR_BROWN = $FF6F4E37;
 | 
|
 COLOR_INDIGO = $FF2E0854;
 | 
|
 COLOR_RASPBERRY = $FFE30B5C;
 | 
|
 COLOR_GRAY = $FF808080;
 | 
|
 COLOR_PURPLE = $FF4B0082;
 | 
|
 COLOR_PINK = $FFFF0090;
 | 
|
 COLOR_DARKBLUE = $FF0000A0;
 | 
|
 COLOR_SILVER = $FFC0C0C0;
 | 
|
 COLOR_BLUEIVY = $FF3090C7;
 | 
|
 COLOR_MIDGRAY = $FFE0E0E0;
 | 
|
 COLOR_LIGHTGRAY = $FFF7F7F7;
 | 
|
 COLOR_BLUE = $FF0000FF;
 | 
|
 COLOR_MAGENTA = $FFFF00FF;
 | 
|
 COLOR_CYAN = $FF00FFFF;
 | 
|
 COLOR_WHITE = $FFFFFFFF;
 | 
|
| Color format constants | |
| See: https://en.wikipedia.org/wiki/Color_depth and https://en.wikipedia.org/wiki/RGBA_color_space | |
 COLOR_FORMAT_ARGB32 = 0;
 | 
32 bits per pixel Alpha/Red/Green/Blue (ARGB8888) | 
 COLOR_FORMAT_ABGR32 = 1;
 | 
32 bits per pixel Alpha/Blue/Green/Red (ABGR8888) | 
 COLOR_FORMAT_RGBA32 = 2;
 | 
32 bits per pixel Red/Green/Blue/Alpha (RGBA8888) | 
 COLOR_FORMAT_BGRA32 = 3;
 | 
32 bits per pixel Blue/Green/Red/Alpha (BGRA8888) | 
 COLOR_FORMAT_URGB32 = 4;
 | 
32 bits per pixel Unused/Red/Green/Blue (URGB8888) | 
 COLOR_FORMAT_UBGR32 = 5;
 | 
32 bits per pixel Unused/Blue/Green/Red (UBGR8888) | 
 COLOR_FORMAT_RGBU32 = 6;
 | 
32 bits per pixel Red/Green/Blue/Unused (RGBU8888) | 
 COLOR_FORMAT_BGRU32 = 7;
 | 
32 bits per pixel Blue/Green/Red/Unused (BGRU8888) | 
 COLOR_FORMAT_RGB24 = 8;
 | 
24 bits per pixel Red/Green/Blue (RGB888) | 
 COLOR_FORMAT_BGR24 = 9;
 | 
24 bits per pixel Blue/Green/Red (BGR888) | 
 COLOR_FORMAT_RGB16 = 10;
 | 
16 bits per pixel Red/Green/Blue (RGB565) | 
 COLOR_FORMAT_BGR16 = 11;
 | 
16 bits per pixel Blue/Green/Red (BGR565) | 
 COLOR_FORMAT_RGB15 = 12;
 | 
15 bits per pixel Red/Green/Blue (RGB555) | 
 COLOR_FORMAT_BGR15 = 13;
 | 
15 bits per pixel Blue/Green/Red (BGR555) | 
 COLOR_FORMAT_RGB8 = 14;
 | 
8 bits per pixel Red/Green/Blue (RGB332) | 
 COLOR_FORMAT_BGR8 = 15;
 | 
8 bits per pixel Blue/Green/Red (BGR233) | 
 COLOR_FORMAT_GRAY16 = 16;
 | 
16 bits per pixel grayscale | 
 COLOR_FORMAT_GRAY8 = 17;
 | 
8 bits per pixel grayscale | 
 COLOR_FORMAT_INDEX16 = 18;
 | 
16 bits per pixel palette index | 
 COLOR_FORMAT_INDEX8 = 19;
 | 
8 bits per pixel palette index | 
 COLOR_FORMAT_MAX = 19;
 | 
|
 COLOR_FORMAT_DEFAULT = COLOR_FORMAT_ARGB32;
 | 
The default color format (Used for the COLOR_* constants above) | 
 COLOR_FORMAT_UNKNOWN = LongWord(-1);
 | 
|
 
Universal size 
 SIZE_* | From /include/linux/sizes.h | |
 SIZE_0 = $00000000;
 | 
|
 SIZE_1 = $00000001;
 | 
|
 SIZE_2 = $00000002;
 | 
|
 SIZE_4 = $00000004;
 | 
|
 SIZE_8 = $00000008;
 | 
|
 SIZE_16 = $00000010;
 | 
|
 SIZE_32 = $00000020;
 | 
|
 SIZE_64 = $00000040;
 | 
|
 SIZE_128 = $00000080;
 | 
|
 SIZE_256 = $00000100;
 | 
|
 SIZE_512 = $00000200;
 | 
|
 SIZE_1K = $00000400;
 | 
|
 SIZE_2K = $00000800;
 | 
|
 SIZE_4K = $00001000;
 | 
|
 SIZE_8K = $00002000;
 | 
|
 SIZE_16K = $00004000;
 | 
|
 SIZE_32K = $00008000;
 | 
|
 SIZE_64K = $00010000;
 | 
|
 SIZE_128K = $00020000;
 | 
|
 SIZE_256K = $00040000;
 | 
|
 SIZE_512K = $00080000;
 | 
|
 SIZE_1M = $00100000;
 | 
|
 SIZE_2M = $00200000;
 | 
|
 SIZE_4M = $00400000;
 | 
|
 SIZE_8M = $00800000;
 | 
|
 SIZE_16M = $01000000;
 | 
|
 SIZE_32M = $02000000;
 | 
|
 SIZE_64M = $04000000;
 | 
|
 SIZE_128M = $08000000;
 | 
|
 SIZE_256M = $10000000;
 | 
|
 SIZE_512M = $20000000;
 | 
|
 SIZE_1G = $40000000;
 | 
|
 SIZE_2G = $80000000;
 | 
|
 SIZE_4G = $100000000;
 | 
|
 SIZE_8G = $200000000;
 | 
|
Universal frequency 
 FREQUENCY_*  FREQUENCY_KHZ = 1000;
 | 
|
 FREQUENCY_MHZ = 1000000;
 | 
|
 FREQUENCY_GHZ = 1000000000;
 | 
 
Universal bit 
 BITS_*  BITS_PER_BYTE = 8;
 | 
|
 BITS_PER_WORD = 16;
 | 
|
 BITS_PER_LONG = 32;
 | 
|
 BITS_PER_LONG_LONG = 64;
 | 
Universal max 
 MAX_*  MAX_BYTE = Byte(-1);
 | 
0xFF | 
 MAX_WORD = Word(-1);
 | 
0xFFFF | 
 MAX_LONG = LongWord(-1);
 | 
0xFFFFFFFF | 
 MAX_LONG_LONG = UInt64(-1);
 | 
0xFFFFFFFFFFFFFFFF | 
Universal time 
 MILLISECONDS_*  MILLISECONDS_PER_SECOND = 1000;
 | 
|
 MICROSECONDS_PER_SECOND = 1000000;
 | 
|
 NANOSECONDS_PER_SECOND = 1000000000;
 | 
|
 MILLISECONDS_PER_DAY = 86400000;
 | 
60*60*24*1000; | 
 SECONDS_PER_DAY = 86400;
 | 
60*60*24; | 
Ultibo time 
 TIME_TICKS_* | 100 nanosecond ticks since 1/1/1601 | |
| Note: Nanoseconds is 10^9 so 100 nanosecond ticks is 10^7 | |
 TIME_TICKS_PER_MICROSECOND = 10;
 | 
10^7 / 10^6 | 
 TIME_TICKS_PER_MILLISECOND = 10000;
 | 
10^7 / 10^3 | 
 TIME_TICKS_PER_SECOND = 10000000;
 | 
10^7 | 
 TIME_TICKS_PER_MINUTE = 600000000;
 | 
60 * 10^7 | 
 TIME_TICKS_PER_HOUR = 36000000000;
 | 
60 * 60 * 10^7 | 
 TIME_TICKS_PER_DAY = 864000000000;
 | 
24 * 60 * 60 * 10^7 | 
 TIME_TICKS_TO_1899 = 94353120000000000;
 | 
Offset between 1/1/1601 (Ultibo) and 30/12/1899 (FreePascal) | 
 TIME_TICKS_TO_1970 = 116444736000000000;
 | 
Offset between 1/1/1601 (Ultibo) and 1/1/1970 (Unix/Linux) | 
 TIME_TICKS_TO_1980 = 119600064000000000;
 | 
Offset between 1/1/1601 (Ultibo) and 1/1/1980 (DOS) | 
 TIME_TICKS_TO_2001 = 126227808000000000;
 | 
Offset between 1/1/1601 (Ultibo) and 1/1/2001 (Clock is assumed not set if time is less than this) | 
 TIME_TICKS_PER_10MILLISECONDS = 100000;
 | 
10^7 / 10^2 | 
Unix/Linux time 
 UNIX_TIME_* | Seconds since 1/1/1970 | |
 UNIX_TIME_MILLISECONDS_PER_DAY = 86400000;
 | 
60*60*24*1000; | 
 UNIX_TIME_SECONDS_PER_DAY = 86400;
 | 
60*60*24; | 
 UNIX_TIME_DAYS_TO_1970 = 25569.0;
 | 
Offset between 1899 (FreePascal) and 1970 (Unix/Linux) | 
FreePascal time 
 PASCAL_* | TDateTime starts at 30/12/1899 | |
 PASCAL_TIME_MILLISECONDS_PER_DAY = 86400000;
 | 
60*60*24*1000; | 
 PASCAL_TIME_SECONDS_PER_DAY = 86400;
 | 
60*60*24; | 
 PASCAL_TIME_DOS_TIME_START = 2162688;
 | 
DOS date time value for start of DOS time (1/1/1980) | 
 PASCAL_DAY_OFFSET = 1.0;
 | 
TDateTime value 1 day | 
 PASCAL_MINUTE_OFFSET = 0.000694444444444444;
 | 
TDateTime value of 1 minute | 
System call 
 SYSTEM_CALL_*  SYSTEM_CALL_UNDEFINED = $00000000;
 | 
|
 SYSTEM_CALL_CONTEXT_SWITCH = $00000001;
 | 
Machine type 
 MACHINE_TYPE_*  MACHINE_TYPE_UNKNOWN = 0;
 | 
|
 MACHINE_TYPE_BCM2708 = 1;
 | 
Broadcom BCM2708 (Raspberry Pi) | 
 MACHINE_TYPE_BCM2709 = 2;
 | 
Broadcom BCM2709 (Raspberry Pi 2) | 
 MACHINE_TYPE_BCM2710 = 3;
 | 
Broadcom BCM2710 (Raspberry Pi 3) | 
 MACHINE_TYPE_VERSATILEPB = 4;
 | 
ARM Versatile PB (QEMU) | 
 MACHINE_TYPE_BCM2711 = 5;
 | 
Broadcom BCM2711 (Raspberry Pi 4) | 
Board type 
 BOARD_TYPE_*  BOARD_TYPE_UNKNOWN = 0;
 | 
|
 BOARD_TYPE_RPIA = 1;
 | 
Raspberry Pi Model A | 
 BOARD_TYPE_RPIB = 2;
 | 
Raspberry Pi Model B | 
 BOARD_TYPE_RPI_COMPUTE = 3;
 | 
Raspberry Pi Compute Module | 
 BOARD_TYPE_RPIA_PLUS = 4;
 | 
Raspberry Pi Model A+ | 
 BOARD_TYPE_RPIB_PLUS = 5;
 | 
Raspberry Pi Model B+ | 
 BOARD_TYPE_RPI2B = 6;
 | 
Raspberry Pi 2 Model B | 
 BOARD_TYPE_RPI_ZERO = 7;
 | 
Raspberry Pi Model Zero | 
 BOARD_TYPE_PC_X86 = 22;
 | 
PC x86 | 
 BOARD_TYPE_PC_X86_64 = 23;
 | 
PC x86 64bit | 
 BOARD_TYPE_RPI3B = 24;
 | 
Raspberry Pi 3 Model B | 
 BOARD_TYPE_QEMUVPB = 25;
 | 
QEMU Versatile PB | 
 BOARD_TYPE_RPI_COMPUTE3 = 26;
 | 
Raspberry Pi Compute Module 3 | 
 BOARD_TYPE_RPI_ZERO_W = 27;
 | 
Raspberry Pi Model Zero W | 
 BOARD_TYPE_RPI3B_PLUS = 28;
 | 
Raspberry Pi 3 Model B+ | 
 BOARD_TYPE_RPI3A_PLUS = 29;
 | 
Raspberry Pi 3 Model A+ | 
 BOARD_TYPE_RPI_COMPUTE3_PLUS = 30;
 | 
Raspberry Pi Compute Module 3+ | 
 BOARD_TYPE_RPI4B = 31;
 | 
Raspberry Pi 4 Model B | 
 BOARD_TYPE_RPI400 = 32;
 | 
Raspberry Pi 400 | 
 BOARD_TYPE_RPI_COMPUTE4 = 33;
 | 
Raspberry Pi Compute Module 4 | 
 BOARD_TYPE_RPI_ZERO2_W = 34;
 | 
Raspberry Pi Model Zero 2 W | 
CPU arch 
 CPU_ARCH_*  CPU_ARCH_UNKNOWN = 0;
 | 
|
 CPU_ARCH_ARM32 = 1;
 | 
ARM Arch 32 (ARMv6/ARMv7)(ARMv8 in 32bit mode) | 
 CPU_ARCH_ARM64 = 2;
 | 
ARM Arch 64 (ARMv8) | 
CPU type 
 CPU_TYPE_*  CPU_TYPE_UNKNOWN = 0;
 | 
|
 CPU_TYPE_ARMV6 = 1;
 | 
ARMv6 (ARM1176 etc) | 
 CPU_TYPE_ARMV7 = 2;
 | 
ARMv7 (Cortex A5/A7/A8/A9/A15/A17 etc) | 
 CPU_TYPE_ARMV8 = 3;
 | 
ARMv8 (Cortex A53/A57/A72 etc) | 
CPU model 
 CPU_MODEL_*  CPU_MODEL_UNKNOWN = 0;
 | 
|
 CPU_MODEL_ARM1176JZFS = 1;
 | 
ARM1176JZF-S | 
 CPU_MODEL_CORTEX_A5 = 2;
 | 
ARM Cortex-A5 | 
 CPU_MODEL_CORTEX_A7 = 3;
 | 
ARM Cortex-A7 | 
 CPU_MODEL_CORTEX_A8 = 4;
 | 
ARM Cortex-A8 | 
 CPU_MODEL_CORTEX_A9 = 5;
 | 
ARM Cortex-A9 | 
 CPU_MODEL_CORTEX_A15 = 6;
 | 
ARM Cortex-A15 | 
 CPU_MODEL_CORTEX_A17 = 7;
 | 
ARM Cortex-A17 | 
 CPU_MODEL_CORTEX_A53 = 8;
 | 
ARM Cortex-A53 | 
 CPU_MODEL_CORTEX_A57 = 9;
 | 
ARM Cortex-A57 | 
 CPU_MODEL_CORTEX_A72 = 10;
 | 
ARM Cortex-A72 | 
CPU description 
 CPU_DESCRIPTION_*  CPU_DESCRIPTION_UNKNOWN = 'Unknown';
 | 
|
 CPU_DESCRIPTION_ARM1176JZFS = 'ARM1176JZF-S';
 | 
|
 CPU_DESCRIPTION_CORTEX_A5 = 'ARM Cortex-A5';
 | 
|
 CPU_DESCRIPTION_CORTEX_A5_MP = 'ARM Cortex-A5 MPCore';
 | 
|
 CPU_DESCRIPTION_CORTEX_A7 = 'ARM Cortex-A7 MPCore';
 | 
|
 CPU_DESCRIPTION_CORTEX_A8 = 'ARM Cortex-A8';
 | 
|
 CPU_DESCRIPTION_CORTEX_A9 = 'ARM Cortex-A9';
 | 
|
 CPU_DESCRIPTION_CORTEX_A9_MP = 'ARM Cortex-A9 MPCore';
 | 
|
 CPU_DESCRIPTION_CORTEX_A15 = 'ARM Cortex-A15 MPCore';
 | 
|
 CPU_DESCRIPTION_CORTEX_A17 = 'ARM Cortex-A17 MPCore';
 | 
|
 CPU_DESCRIPTION_CORTEX_A53 = 'ARM Cortex-A53 MPCore';
 | 
|
 CPU_DESCRIPTION_CORTEX_A57 = 'ARM Cortex-A57 MPCore';
 | 
|
 CPU_DESCRIPTION_CORTEX_A72 = 'ARM Cortex-A72 MPCore';
 | 
CPU state 
 CPU_STATE_*  CPU_STATE_NONE = (0 shl 0);
 | 
|
 CPU_STATE_MMU_ENABLED = (1 shl 0);
 | 
|
 CPU_STATE_DATA_CACHE_ENABLED = (1 shl 1);
 | 
|
 CPU_STATE_INSTRUCTION_CACHE_ENABLED = (1 shl 2);
 | 
|
 CPU_STATE_BRANCH_PREDICTION_ENABLED = (1 shl 3);
 | 
CPU group 
 CPU_GROUP__*  CPU_GROUP_0 = 0;
 | 
|
 CPU_GROUP_1 = 1;
 | 
|
 CPU_GROUP_2 = 2;
 | 
|
 CPU_GROUP_3 = 3;
 | 
|
 CPU_GROUP_4 = 4;
 | 
|
 CPU_GROUP_5 = 5;
 | 
|
 CPU_GROUP_6 = 6;
 | 
|
 CPU_GROUP_7 = 7;
 | 
|
 CPU_GROUP_8 = 8;
 | 
|
 CPU_GROUP_9 = 9;
 | 
|
 CPU_GROUP_10 = 10;
 | 
|
 CPU_GROUP_11 = 11;
 | 
|
 CPU_GROUP_12 = 12;
 | 
|
 CPU_GROUP_13 = 13;
 | 
|
 CPU_GROUP_14 = 14;
 | 
|
 CPU_GROUP_15 = 15;
 | 
|
 CPU_GROUP_16 = 16;
 | 
|
 CPU_GROUP_17 = 17;
 | 
|
 CPU_GROUP_18 = 18;
 | 
|
 CPU_GROUP_19 = 19;
 | 
|
 CPU_GROUP_20 = 20;
 | 
|
 CPU_GROUP_21 = 21;
 | 
|
 CPU_GROUP_22 = 22;
 | 
|
 CPU_GROUP_23 = 23;
 | 
|
 CPU_GROUP_24 = 24;
 | 
|
 CPU_GROUP_25 = 25;
 | 
|
 CPU_GROUP_26 = 26;
 | 
|
 CPU_GROUP_27 = 27;
 | 
|
 CPU_GROUP_28 = 28;
 | 
|
 CPU_GROUP_29 = 29;
 | 
|
 CPU_GROUP_30 = 30;
 | 
|
 CPU_GROUP_31 = 31;
 | 
|
 CPU_GROUP_ALL = $FFFFFFFF;
 | 
|
 CPU_GROUP_MAX = CPU_GROUP_31;
 | 
|
CPU Id 
 CPU_ID_*  CPU_ID_0 = 0;
 | 
|
 CPU_ID_1 = 1;
 | 
|
 CPU_ID_2 = 2;
 | 
|
 CPU_ID_3 = 3;
 | 
|
 CPU_ID_4 = 4;
 | 
|
 CPU_ID_5 = 5;
 | 
|
 CPU_ID_6 = 6;
 | 
|
 CPU_ID_7 = 7;
 | 
|
 CPU_ID_8 = 8;
 | 
|
 CPU_ID_9 = 9;
 | 
|
 CPU_ID_10 = 10;
 | 
|
 CPU_ID_11 = 11;
 | 
|
 CPU_ID_12 = 12;
 | 
|
 CPU_ID_13 = 13;
 | 
|
 CPU_ID_14 = 14;
 | 
|
 CPU_ID_15 = 15;
 | 
|
 CPU_ID_16 = 16;
 | 
|
 CPU_ID_17 = 17;
 | 
|
 CPU_ID_18 = 18;
 | 
|
 CPU_ID_19 = 19;
 | 
|
 CPU_ID_20 = 20;
 | 
|
 CPU_ID_21 = 21;
 | 
|
 CPU_ID_22 = 22;
 | 
|
 CPU_ID_23 = 23;
 | 
|
 CPU_ID_24 = 24;
 | 
|
 CPU_ID_25 = 25;
 | 
|
 CPU_ID_26 = 26;
 | 
|
 CPU_ID_27 = 27;
 | 
|
 CPU_ID_28 = 28;
 | 
|
 CPU_ID_29 = 29;
 | 
|
 CPU_ID_30 = 30;
 | 
|
 CPU_ID_31 = 31;
 | 
|
 CPU_ID_ALL = $FFFFFFFF;
 | 
|
 CPU_ID_MAX = CPU_ID_31;
 | 
|
CPU mask 
 CPU_MASK_*  CPU_MASK_0 = (1 shl CPU_ID_0);
 | 
|
 CPU_MASK_1 = (1 shl CPU_ID_1);
 | 
|
 CPU_MASK_2 = (1 shl CPU_ID_2);
 | 
|
 CPU_MASK_3 = (1 shl CPU_ID_3);
 | 
|
 CPU_MASK_4 = (1 shl CPU_ID_4);
 | 
|
 CPU_MASK_5 = (1 shl CPU_ID_5);
 | 
|
 CPU_MASK_6 = (1 shl CPU_ID_6);
 | 
|
 CPU_MASK_7 = (1 shl CPU_ID_7);
 | 
|
 CPU_MASK_8 = (1 shl CPU_ID_8);
 | 
|
 CPU_MASK_9 = (1 shl CPU_ID_9);
 | 
|
 CPU_MASK_10 = (1 shl CPU_ID_10);
 | 
|
 CPU_MASK_11 = (1 shl CPU_ID_11);
 | 
|
 CPU_MASK_12 = (1 shl CPU_ID_12);
 | 
|
 CPU_MASK_13 = (1 shl CPU_ID_13);
 | 
|
 CPU_MASK_14 = (1 shl CPU_ID_14);
 | 
|
 CPU_MASK_15 = (1 shl CPU_ID_15);
 | 
|
 CPU_MASK_16 = (1 shl CPU_ID_16);
 | 
|
 CPU_MASK_17 = (1 shl CPU_ID_17);
 | 
|
 CPU_MASK_18 = (1 shl CPU_ID_18);
 | 
|
 CPU_MASK_19 = (1 shl CPU_ID_19);
 | 
|
 CPU_MASK_20 = (1 shl CPU_ID_20);
 | 
|
 CPU_MASK_21 = (1 shl CPU_ID_21);
 | 
|
 CPU_MASK_22 = (1 shl CPU_ID_22);
 | 
|
 CPU_MASK_23 = (1 shl CPU_ID_23);
 | 
|
 CPU_MASK_24 = (1 shl CPU_ID_24);
 | 
|
 CPU_MASK_25 = (1 shl CPU_ID_25);
 | 
|
 CPU_MASK_26 = (1 shl CPU_ID_26);
 | 
|
 CPU_MASK_27 = (1 shl CPU_ID_27);
 | 
|
 CPU_MASK_28 = (1 shl CPU_ID_28);
 | 
|
 CPU_MASK_29 = (1 shl CPU_ID_29);
 | 
|
 CPU_MASK_30 = (1 shl CPU_ID_30);
 | 
|
 CPU_MASK_31 = (1 shl CPU_ID_31);
 | 
|
 CPU_MASK_NONE = $00000000;
 | 
|
 CPU_MASK_ALL = $FFFFFFFF;
 | 
|
CPU affinity 
 CPU_AFFINITY_*  CPU_AFFINITY_0 = (1 shl CPU_ID_0);
 | 
|
 CPU_AFFINITY_1 = (1 shl CPU_ID_1);
 | 
|
 CPU_AFFINITY_2 = (1 shl CPU_ID_2);
 | 
|
 CPU_AFFINITY_3 = (1 shl CPU_ID_3);
 | 
|
 CPU_AFFINITY_4 = (1 shl CPU_ID_4);
 | 
|
 CPU_AFFINITY_5 = (1 shl CPU_ID_5);
 | 
|
 CPU_AFFINITY_6 = (1 shl CPU_ID_6);
 | 
|
 CPU_AFFINITY_7 = (1 shl CPU_ID_7);
 | 
|
 CPU_AFFINITY_8 = (1 shl CPU_ID_8);
 | 
|
 CPU_AFFINITY_9 = (1 shl CPU_ID_9);
 | 
|
 CPU_AFFINITY_10 = (1 shl CPU_ID_10);
 | 
|
 CPU_AFFINITY_11 = (1 shl CPU_ID_11);
 | 
|
 CPU_AFFINITY_12 = (1 shl CPU_ID_12);
 | 
|
 CPU_AFFINITY_13 = (1 shl CPU_ID_13);
 | 
|
 CPU_AFFINITY_14 = (1 shl CPU_ID_14);
 | 
|
 CPU_AFFINITY_15 = (1 shl CPU_ID_15);
 | 
|
 CPU_AFFINITY_16 = (1 shl CPU_ID_16);
 | 
|
 CPU_AFFINITY_17 = (1 shl CPU_ID_17);
 | 
|
 CPU_AFFINITY_18 = (1 shl CPU_ID_18);
 | 
|
 CPU_AFFINITY_19 = (1 shl CPU_ID_19);
 | 
|
 CPU_AFFINITY_20 = (1 shl CPU_ID_20);
 | 
|
 CPU_AFFINITY_21 = (1 shl CPU_ID_21);
 | 
|
 CPU_AFFINITY_22 = (1 shl CPU_ID_22);
 | 
|
 CPU_AFFINITY_23 = (1 shl CPU_ID_23);
 | 
|
 CPU_AFFINITY_24 = (1 shl CPU_ID_24);
 | 
|
 CPU_AFFINITY_25 = (1 shl CPU_ID_25);
 | 
|
 CPU_AFFINITY_26 = (1 shl CPU_ID_26);
 | 
|
 CPU_AFFINITY_27 = (1 shl CPU_ID_27);
 | 
|
 CPU_AFFINITY_28 = (1 shl CPU_ID_28);
 | 
|
 CPU_AFFINITY_29 = (1 shl CPU_ID_29);
 | 
|
 CPU_AFFINITY_30 = (1 shl CPU_ID_30);
 | 
|
 CPU_AFFINITY_31 = (1 shl CPU_ID_31);
 | 
|
 CPU_AFFINITY_NONE = $00000000;
 | 
|
 CPU_AFFINITY_ALL = $FFFFFFFF;
 | 
|
FPU type 
 FPU_TYPE_*  FPU_TYPE_UNKNOWN = 0;
 | 
|
 FPU_TYPE_SOFT = 1;
 | 
|
 FPU_TYPE_VFPV2 = 2;
 | 
|
 FPU_TYPE_VFPV3 = 3;
 | 
|
 FPU_TYPE_VFPV4 = 4;
 | 
FPU state 
 FPU_STATE_*  FPU_STATE_NONE = (0 shl 0);
 | 
|
 FPU_STATE_ENABLED = (1 shl 0);
 | 
GPU type 
 GPU_TYPE_*  GPU_TYPE_UNKNOWN = 0;
 | 
|
 GPU_TYPE_VC4 = 1;
 | 
Broadcom VideoCore IV | 
 GPU_TYPE_MALI400 = 2;
 | 
ARM Mali 400 | 
 GPU_TYPE_MALI450 = 3;
 | 
ARM Mali 450 | 
 GPU_TYPE_GC880 = 4;
 | 
Vivante GC880 | 
 GPU_TYPE_GC2000 = 5;
 | 
Vivante GC2000 | 
 GPU_TYPE_VC6 = 6;
 | 
Broadcom VideoCore VI | 
GPU state 
 GPU_STATE_*  GPU_STATE_NONE = (0 shl 0);
 | 
|
 GPU_STATE_ENABLED = (1 shl 0);
 | 
Cache type 
 CACHE_TYPE_*  CACHE_TYPE_NONE = 0;
 | 
No Cache | 
 CACHE_TYPE_DATA = 1;
 | 
Data Cache Only | 
 CACHE_TYPE_INSTRUCTION = 2;
 | 
Instruction Cache Only | 
 CACHE_TYPE_SEPARATE = 3;
 | 
Separate Data and Instruction Caches | 
 CACHE_TYPE_UNIFIED = 4;
 | 
Unified Data and Instruction Cache | 
DMA direction 
 DMA_DIR_*  DMA_DIR_NONE = 0;
 | 
No direction (No special handling by controller) | 
 DMA_DIR_MEM_TO_MEM = 1;
 | 
|
 DMA_DIR_MEM_TO_DEV = 2;
 | 
|
 DMA_DIR_DEV_TO_MEM = 3;
 | 
|
 DMA_DIR_DEV_TO_DEV = 4;
 | 
DMA DREQ Id 
 DMA_DREQ_ID_*  DMA_DREQ_ID_NONE = 0;
 | 
No peripheral gating (memory to memory transfer) | 
 DMA_DREQ_ID_UART_TX = 1;
 | 
|
 DMA_DREQ_ID_UART_RX = 2;
 | 
|
 DMA_DREQ_ID_SPI_TX = 3;
 | 
|
 DMA_DREQ_ID_SPI_RX = 4;
 | 
|
 DMA_DREQ_ID_SPI_SLAVE_TX = 5;
 | 
|
 DMA_DREQ_ID_SPI_SLAVE_RX = 6;
 | 
|
 DMA_DREQ_ID_PCM_TX = 7;
 | 
|
 DMA_DREQ_ID_PCM_RX = 8;
 | 
|
 DMA_DREQ_ID_PWM = 9;
 | 
|
 DMA_DREQ_ID_MMC = 10;
 | 
|
 DMA_DREQ_ID_SDHOST = 11;
 | 
|
| Additional and aliased constants (Where applicable) | |
 DMA_DREQ_ID_UART0_TX = DMA_DREQ_ID_UART_TX;
 | 
|
 DMA_DREQ_ID_UART0_RX = DMA_DREQ_ID_UART_RX;
 | 
|
 DMA_DREQ_ID_UART1_TX = 12;
 | 
|
 DMA_DREQ_ID_UART1_RX = 13;
 | 
|
 DMA_DREQ_ID_UART2_TX = 14;
 | 
|
 DMA_DREQ_ID_UART2_RX = 15;
 | 
|
 DMA_DREQ_ID_UART3_TX = 16;
 | 
|
 DMA_DREQ_ID_UART3_RX = 17;
 | 
|
 DMA_DREQ_ID_UART4_TX = 18;
 | 
|
 DMA_DREQ_ID_UART4_RX = 19;
 | 
|
 DMA_DREQ_ID_UART5_TX = 20;
 | 
|
 DMA_DREQ_ID_UART5_RX = 21;
 | 
|
 DMA_DREQ_ID_SPI0_TX = DMA_DREQ_ID_SPI_TX;
 | 
|
 DMA_DREQ_ID_SPI0_RX = DMA_DREQ_ID_SPI_RX;
 | 
|
 DMA_DREQ_ID_SPI1_TX = 22;
 | 
|
 DMA_DREQ_ID_SPI1_RX = 23;
 | 
|
 DMA_DREQ_ID_SPI2_TX = 24;
 | 
|
 DMA_DREQ_ID_SPI2_RX = 25;
 | 
|
 DMA_DREQ_ID_SPI3_TX = 26;
 | 
|
 DMA_DREQ_ID_SPI3_RX = 27;
 | 
|
 DMA_DREQ_ID_SPI4_TX = 28;
 | 
|
 DMA_DREQ_ID_SPI4_RX = 29;
 | 
|
 DMA_DREQ_ID_SPI5_TX = 30;
 | 
|
  DMA_DREQ_ID_SPI5_RX = 31;
 | 
|
 DMA_DREQ_ID_SPI6_TX = 32;
 | 
|
 DMA_DREQ_ID_SPI6_RX = 33;
 | 
|
 DMA_DREQ_ID_PCM0_TX = DMA_DREQ_ID_PCM_TX;
 | 
|
 DMA_DREQ_ID_PCM0_RX = DMA_DREQ_ID_PCM_RX;
 | 
|
 DMA_DREQ_ID_PWM0 = DMA_DREQ_ID_PWM;
 | 
|
 DMA_DREQ_ID_PWM1 = 34;
 | 
|
 DMA_DREQ_ID_EMMC0 = DMA_DREQ_ID_MMC;
 | 
|
 DMA_DREQ_ID_EMMC1 = DMA_DREQ_ID_SDHOST;
 | 
|
 DMA_DREQ_ID_EMMC2 = 35;
 | 
|
GPIO pin 
 GPIO_PIN_*  GPIO_PIN_0 = 0;
 | 
|
 GPIO_PIN_1 = 1;
 | 
|
 GPIO_PIN_2 = 2;
 | 
|
 GPIO_PIN_3 = 3;
 | 
|
 GPIO_PIN_4 = 4;
 | 
|
 GPIO_PIN_5 = 5;
 | 
|
 GPIO_PIN_6 = 6;
 | 
|
 GPIO_PIN_7 = 7;
 | 
|
 GPIO_PIN_8 = 8;
 | 
|
 GPIO_PIN_9 = 9;
 | 
|
 GPIO_PIN_10 = 10;
 | 
|
 GPIO_PIN_11 = 11;
 | 
|
 GPIO_PIN_12 = 12;
 | 
|
 GPIO_PIN_13 = 13;
 | 
|
 GPIO_PIN_14 = 14;
 | 
|
 GPIO_PIN_15 = 15;
 | 
|
 GPIO_PIN_16 = 16;
 | 
|
 GPIO_PIN_17 = 17;
 | 
|
 GPIO_PIN_18 = 18;
 | 
|
 GPIO_PIN_19 = 19;
 | 
|
 GPIO_PIN_20 = 20;
 | 
|
 GPIO_PIN_21 = 21;
 | 
|
 GPIO_PIN_22 = 22;
 | 
|
 GPIO_PIN_23 = 23;
 | 
|
 GPIO_PIN_24 = 24;
 | 
|
 GPIO_PIN_25 = 25;
 | 
|
 GPIO_PIN_26 = 26;
 | 
|
 GPIO_PIN_27 = 27;
 | 
|
 GPIO_PIN_28 = 28;
 | 
|
 GPIO_PIN_29 = 29;
 | 
|
 GPIO_PIN_30 = 30;
 | 
|
 GPIO_PIN_31 = 31;
 | 
|
 GPIO_PIN_32 = 32;
 | 
|
 GPIO_PIN_33 = 33;
 | 
|
 GPIO_PIN_34 = 34;
 | 
|
 GPIO_PIN_35 = 35;
 | 
|
 GPIO_PIN_36 = 36;
 | 
|
 GPIO_PIN_37 = 37;
 | 
|
 GPIO_PIN_38 = 38;
 | 
|
 GPIO_PIN_39 = 39;
 | 
|
 GPIO_PIN_40 = 40;
 | 
|
 GPIO_PIN_41 = 41;
 | 
|
 GPIO_PIN_42 = 42;
 | 
|
 GPIO_PIN_43 = 43;
 | 
|
 GPIO_PIN_44 = 44;
 | 
|
 GPIO_PIN_45 = 45;
 | 
|
 GPIO_PIN_46 = 46;
 | 
|
 GPIO_PIN_47 = 47;
 | 
|
 GPIO_PIN_48 = 48;
 | 
|
 GPIO_PIN_49 = 49;
 | 
|
 GPIO_PIN_50 = 50;
 | 
|
 GPIO_PIN_51 = 51;
 | 
|
 GPIO_PIN_52 = 52;
 | 
|
 GPIO_PIN_53 = 53;
 | 
|
 GPIO_PIN_54 = 54;
 | 
|
 GPIO_PIN_55 = 55;
 | 
|
 GPIO_PIN_56 = 56;
 | 
|
 GPIO_PIN_57 = 57;
 | 
|
 GPIO_PIN_58 = 58;
 | 
|
 GPIO_PIN_59 = 59;
 | 
|
 GPIO_PIN_60 = 60;
 | 
|
 GPIO_PIN_MAX = 60;
 | 
|
 GPIO_PIN_UNKNOWN = LongWord(-1);
 | 
|
GPIO function 
 GPIO_FUNCTION_*  GPIO_FUNCTION_IN = 0;
 | 
|
 GPIO_FUNCTION_OUT = 1;
 | 
|
 GPIO_FUNCTION_ALT0 = 2;
 | 
|
 GPIO_FUNCTION_ALT1 = 3;
 | 
|
 GPIO_FUNCTION_ALT2 = 4;
 | 
|
 GPIO_FUNCTION_ALT3 = 5;
 | 
|
 GPIO_FUNCTION_ALT4 = 6;
 | 
|
 GPIO_FUNCTION_ALT5 = 7;
 | 
|
 GPIO_FUNCTION_UNKNOWN = LongWord(-1);
 | 
Returned by GPIOFunctionGet on error (eg device does not support reading the function state) | 
GPIO level 
 GPIO_LEVEL_*  GPIO_LEVEL_LOW = 0;
 | 
|
 GPIO_LEVEL_HIGH = 1;
 | 
|
 GPIO_LEVEL_UNKNOWN = LongWord(-1);
 | 
Returned by GPIOInputGet/Wait on error (eg device does not exist) | 
GPIO pull 
 GPIO_PULL_*  GPIO_PULL_NONE = 0;
 | 
|
 GPIO_PULL_UP = 1;
 | 
|
 GPIO_PULL_DOWN = 2;
 | 
|
 GPIO_PULL_UNKNOWN = LongWord(-1);
 | 
Returned by GPIOPullGet on error (eg device does not support reading the PullUp/Down state) | 
GPIO trigger 
 GPIO_TRIGGER_*  GPIO_TRIGGER_NONE = 0;
 | 
|
 GPIO_TRIGGER_LOW = 1;
 | 
|
 GPIO_TRIGGER_HIGH  = 2;
 | 
|
 GPIO_TRIGGER_RISING = 3;
 | 
|
 GPIO_TRIGGER_FALLING = 4;
 | 
|
 GPIO_TRIGGER_ASYNC_RISING = 5;
 | 
|
 GPIO_TRIGGER_ASYNC_FALLING = 6;
 | 
|
 GPIO_TRIGGER_EDGE = 7;
 | 
|
 GPIO_TRIGGER_UNKNOWN = LongWord(-1);
 | 
Passed to GPIO callback event when device does not support determining the trigger source | 
Virtual GPIO pin 
 VIRTUAL_GPIO_PIN_*  VIRTUAL_GPIO_PIN_0 = GPIO_PIN_0;
 | 
|
 VIRTUAL_GPIO_PIN_1 = GPIO_PIN_1;
 | 
|
 VIRTUAL_GPIO_PIN_2 = GPIO_PIN_2;
 | 
|
 VIRTUAL_GPIO_PIN_3 = GPIO_PIN_3;
 | 
|
 VIRTUAL_GPIO_PIN_4 = GPIO_PIN_4;
 | 
|
 VIRTUAL_GPIO_PIN_5 = GPIO_PIN_5;
 | 
|
 VIRTUAL_GPIO_PIN_6 = GPIO_PIN_6;
 | 
|
 VIRTUAL_GPIO_PIN_7 = GPIO_PIN_7;
 | 
 
Virtual GPIO function 
 VIRTUAL_GPIO_FUNCTION_*  VIRTUAL_GPIO_FUNCTION_IN = 0;
 | 
|
 VIRTUAL_GPIO_FUNCTION_OUT = 1;
 | 
Serial baud rate 
 SERIAL_BAUD_RATE_*  SERIAL_BAUD_RATE_DEFAULT = 0;
 | 
|
 SERIAL_BAUD_RATE_STANDARD = 115200;
 | 
If SERIAL_BAUD_RATE_DEFAULT is passed to SerialOpen then this is the baud rate to use | 
 SERIAL_BAUD_RATE_FALLBACK = 9600;
 | 
The fallback baud rate if SERIAL_BAUD_RATE_STANDARD is not supported by the device | 
 
Serial data bit 
 SERIAL_DATA_*  SERIAL_DATA_8BIT = 8;
 | 
|
 SERIAL_DATA_7BIT = 7;
 | 
|
 SERIAL_DATA_6BIT = 6;
 | 
|
 SERIAL_DATA_5BIT = 5;
 | 
Serial stop bit 
 SERIAL_STOP_*  SERIAL_STOP_1BIT = 1;
 | 
|
 SERIAL_STOP_2BIT = 2;
 | 
|
 SERIAL_STOP_1BIT5 = 3;
 | 
1.5 Stop bits | 
 
Serial parity 
 SERIAL_PARITY_*  SERIAL_PARITY_NONE = 0;
 | 
|
 SERIAL_PARITY_ODD = 1;
 | 
|
 SERIAL_PARITY_EVEN = 2;
 | 
|
 SERIAL_PARITY_MARK = 3;
 | 
|
 SERIAL_PARITY_SPACE = 4;
 | 
Serial flow control 
 SERIAL_FLOW_*  SERIAL_FLOW_NONE = 0;
 | 
|
 SERIAL_FLOW_RTS_CTS = 1;
 | 
|
 SERIAL_FLOW_DSR_DTR = 2;
 | 
 
I2C address 
 I2C_ADDRESS_*  I2C_ADDRESS_INVALID = Word(-1);
 | 
SPI mode 
 SPI_MODE_*  SPI_MODE_4WIRE = 0;
 | 
|
 SPI_MODE_3WIRE = 1;
 | 
|
 SPI_MODE_LOSSI = 2;
 | 
|
 SPI_MODE_UNKNOWN = LongWord(-1);
 | 
Returned by SPIGetMode on error (eg device does not exist) | 
SPI chip select 
 SPI_CS_*  SPI_CS_0 = 0;
 | 
|
 SPI_CS_1 = 1;
 | 
|
 SPI_CS_2 = 2;
 | 
|
 SPI_CS_3 = 3;
 | 
|
 SPI_CS_4 = 4;
 | 
|
 SPI_CS_5 = 5;
 | 
|
 SPI_CS_6 = 6;
 | 
|
 SPI_CS_7 = 7;
 | 
|
 SPI_CS_8 = 8;
 | 
|
 SPI_CS_9 = 9;
 | 
|
 SPI_CS_10 = 10;
 | 
|
 SPI_CS_11 = 11;
 | 
|
 SPI_CS_12 = 12;
 | 
|
 SPI_CS_13 = 13;
 | 
|
 SPI_CS_14 = 14;
 | 
|
 SPI_CS_15 = 15;
 | 
|
 SPI_CS_MAX = 15;
 | 
|
 SPI_CS_NONE = LongWord(-1);
 | 
Special value for No Chip Select to allow external control of additional CS lines | 
SPI clock phase (CPHA) 
 SPI_CLOCK_PHASE_*  SPI_CLOCK_PHASE_LOW = 0;
 | 
Clock edge rising or falling for data input/output | 
 SPI_CLOCK_PHASE_HIGH = 1;
 | 
See https://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus for more information | 
 SPI_CLOCK_PHASE_UNKNOWN = LongWord(-1);
 | 
Returned by SPIGetClockPhase on error (eg device does not exist) | 
SPI clock polarity (CPOL) 
 SPI_CLOCK_POLARITY_*  SPI_CLOCK_POLARITY_LOW = 0;
 | 
Clock is low when not transmitting | 
 SPI_CLOCK_POLARITY_HIGH = 1;
 | 
Clock is high when not transmitting | 
 SPI_CLOCK_POLARITY_UNKNOWN = LongWord(-1);
 | 
Returned by SPIGetClockPolarity on error (eg device does not exist) | 
    
SPI chip select polarity (CSPOL) 
 SPI_CS_POLARITY_*  SPI_CS_POLARITY_LOW = 0;
 | 
Chip select is active low (Default) | 
 SPI_CS_POLARITY_HIGH = 1;
 | 
Chip select is active high | 
 SPI_CS_POLARITY_UNKNOWN = LongWord(-1);
 | 
Returned by SPIGetSelectPolarity on error (eg device does not exist) | 
Power Id 
 POWER_ID_*  POWER_ID_MMC0 = 0;
 | 
|
 POWER_ID_MMC1 = 1;
 | 
|
 POWER_ID_MMC2 = 2;
 | 
|
 POWER_ID_MMC3 = 3;
 | 
|
 POWER_ID_UART0 = 4;
 | 
|
 POWER_ID_UART1 = 5;
 | 
|
 POWER_ID_UART2 = 6;
 | 
|
 POWER_ID_UART3 = 7;
 | 
|
 POWER_ID_USB0 = 8;
 | 
|
 POWER_ID_USB1 = 9;
 | 
|
 POWER_ID_USB2 = 10;
 | 
|
 POWER_ID_USB3 = 11;
 | 
|
 POWER_ID_I2C0 = 12;
 | 
|
 POWER_ID_I2C1 = 13;
 | 
|
 POWER_ID_I2C2 = 14;
 | 
|
 POWER_ID_I2C3 = 15;
 | 
|
 POWER_ID_SPI0 = 16;
 | 
|
 POWER_ID_SPI1 = 17;
 | 
|
 POWER_ID_SPI2 = 18;
 | 
|
 POWER_ID_SPI3 = 19;
 | 
|
 POWER_ID_CCP2TX = 20;
 | 
|
| Additional constants (Where applicable) | |
 POWER_ID_UART4 = 21;
 | 
|
 POWER_ID_UART5 = 22;
 | 
|
 POWER_ID_UART6 = 23;
 | 
|
 POWER_ID_UART7 = 24;
 | 
|
 POWER_ID_UART8 = 25;
 | 
|
 POWER_ID_UART9 = 26;
 | 
|
 POWER_ID_I2C4 = 27;
 | 
|
 POWER_ID_I2C5 = 28;
 | 
|
 POWER_ID_I2C6 = 29;
 | 
|
 POWER_ID_I2C7 = 30;
 | 
|
 POWER_ID_I2C8 = 31;
 | 
|
 POWER_ID_I2C9 = 32;
 | 
|
 POWER_ID_SPI4 = 33;
 | 
|
 POWER_ID_SPI5 = 34;
 | 
|
 POWER_ID_SPI6 = 35;
 | 
|
 POWER_ID_SPI7 = 36;
 | 
|
 POWER_ID_SPI8 = 37;
 | 
|
 POWER_ID_SPI9 = 38;
 | 
|
 POWER_ID_UNKNOWN = LongWord(-1);
 | 
|
Power state 
 POWER_STATE_*  POWER_STATE_OFF = 0;
 | 
|
 POWER_STATE_ON = 1;
 | 
Clock Id 
 CLOCK_ID_*  CLOCK_ID_MMC0 = 0;
 | 
|
 CLOCK_ID_MMC1 = 1;
 | 
|
 CLOCK_ID_MMC2 = 2;
 | 
|
 CLOCK_ID_MMC3 = 3;
 | 
|
 CLOCK_ID_UART0 = 4;
 | 
|
 CLOCK_ID_UART1 = 5;
 | 
|
 CLOCK_ID_UART2 = 6;
 | 
|
 CLOCK_ID_UART3 = 7;
 | 
|
 CLOCK_ID_CPU = 8;
 | 
|
 CLOCK_ID_CORE = 9;
 | 
|
 CLOCK_ID_GPU = 10;
 | 
|
 CLOCK_ID_V3D = 11;
 | 
|
 CLOCK_ID_H264 = 12;
 | 
|
 CLOCK_ID_ISP = 13;
 | 
|
 CLOCK_ID_SDRAM = 14;
 | 
|
 CLOCK_ID_PIXEL = 15;
 | 
|
 CLOCK_ID_PWM0 = 16;
 | 
|
 CLOCK_ID_PWM1 = 17;
 | 
|
 CLOCK_ID_I2C0 = 18;
 | 
|
 CLOCK_ID_I2C1 = 19;
 | 
|
 CLOCK_ID_I2C2 = 20;
 | 
|
 CLOCK_ID_I2C3 = 21;
 | 
|
 CLOCK_ID_SPI0 = 22;
 | 
|
 CLOCK_ID_SPI1 = 23;
 | 
|
 CLOCK_ID_SPI2 = 24;
 | 
|
 CLOCK_ID_SPI3 = 25;
 | 
|
| Additional constants (Where applicable) | |
 CLOCK_ID_UART4 = 26;
 | 
|
 CLOCK_ID_UART5 = 27;
 | 
|
 CLOCK_ID_UART6 = 28;
 | 
|
 CLOCK_ID_UART7 = 29;
 | 
|
 CLOCK_ID_UART8 = 30;
 | 
|
 CLOCK_ID_UART9 = 31;
 | 
|
 CLOCK_ID_I2C4 = 32;
 | 
|
 CLOCK_ID_I2C5 = 33;
 | 
|
 CLOCK_ID_I2C6 = 34;
 | 
|
 CLOCK_ID_I2C7 = 35;
 | 
|
 CLOCK_ID_I2C8 = 36;
 | 
|
 CLOCK_ID_I2C9 = 37;
 | 
|
 CLOCK_ID_SPI4 = 38;
 | 
|
 CLOCK_ID_SPI5 = 39;
 | 
|
 CLOCK_ID_SPI6 = 40;
 | 
|
 CLOCK_ID_SPI7 = 41;
 | 
|
 CLOCK_ID_SPI8 = 42;
 | 
|
 CLOCK_ID_SPI9 = 43;
 | 
|
 CLOCK_ID_UNKNOWN = LongWord(-1);
 | 
|
 
Clock state 
 CLOCK_STATE_*  CLOCK_STATE_OFF = 0;
 | 
|
 CLOCK_STATE_ON = 1;
 | 
Turbo Id 
 TURBO_ID_*  TURBO_ID_SOC = 0;
 | 
Voltage Id 
 VOLTAGE_ID_*  VOLTAGE_ID_CORE = 0;
 | 
|
 VOLTAGE_ID_SDRAM_C = 1;
 | 
|
 VOLTAGE_ID_SDRAM_P = 2;
 | 
|
 VOLTAGE_ID_SDRAM_I = 3;
 | 
  
Temperature Id 
 TEMPERATURE_ID_*  TEMPERATURE_ID_SOC = 0;
 | 
Console direction 
 CONSOLE_DIRECTION_*  CONSOLE_DIRECTION_UP = 0;
 | 
Scroll Console Up | 
 CONSOLE_DIRECTION_DOWN = 1;
 | 
Scroll Console Down | 
 CONSOLE_DIRECTION_LEFT = 2;
 | 
Scroll Console Left | 
 CONSOLE_DIRECTION_RIGHT = 3;
 | 
Scroll Console Right | 
  
Console position 
 CONSOLE_POSITION_*  CONSOLE_POSITION_FULL = 0;
 | 
Console Window will appear in the full console | 
 CONSOLE_POSITION_TOP = 1;
 | 
Console Window will appear in the top half of the console | 
 CONSOLE_POSITION_BOTTOM = 2;
 | 
Console Window will appear in the bottom half of the console | 
 CONSOLE_POSITION_LEFT = 3;
 | 
Console Window will appear in the left half of the console | 
 CONSOLE_POSITION_RIGHT = 4;
 | 
Console Window will appear in the right half of the console | 
 CONSOLE_POSITION_TOPLEFT = 5;
 | 
Console Window will appear in the top left corner of the console | 
 CONSOLE_POSITION_TOPRIGHT = 6;
 | 
Console Window will appear in the top right corner of the console | 
 CONSOLE_POSITION_BOTTOMLEFT = 7;
 | 
Console Window will appear in the bottom left corner of the console | 
 CONSOLE_POSITION_BOTTOMRIGHT = 8;
 | 
Console Window will appear in the bottom right corner of the console | 
 CONSOLE_POSITION_FULLSCREEN = 9;
 | 
Console Window will occupy the entire screen (Without any border or desktop)(If supported) | 
 CONSOLE_POSITION_UNKNOWN = LongWord(-1);
 | 
|
 
Framebuffer depth 
 FRAMEBUFFER_DEPTH_*  FRAMEBUFFER_DEPTH_8 = 8;
 | 
|
 FRAMEBUFFER_DEPTH_16 = 16;
 | 
|
 FRAMEBUFFER_DEPTH_24 = 24;
 | 
|
 FRAMEBUFFER_DEPTH_32 = 32;
 | 
Framebuffer pixel order 
 FRAMEBUFFER_ORDER_*  FRAMEBUFFER_ORDER_BGR = 0;
 | 
|
 FRAMEBUFFER_ORDER_RGB = 1;
 | 
  
Framebuffer alpha mode 
 FRAMEBUFFER_MODE_*  FRAMEBUFFER_MODE_ENABLED = 0;
 | 
Alpha channel enabled (0 = Fully opaque) | 
 FRAMEBUFFER_MODE_REVERSED = 1;
 | 
Alpha channel reversed (0 = Fully transparent) | 
 FRAMEBUFFER_MODE_IGNORED = 2;
 | 
Alpha channel ignored | 
  
Framebuffer rotation 
 FRAMEBUFFER_ROTATION_*  FRAMEBUFFER_ROTATION_0 = 0;
 | 
No rotation | 
 FRAMEBUFFER_ROTATION_90 = 1;
 | 
90 degree rotation | 
 FRAMEBUFFER_ROTATION_180 = 2;
 | 
180 degree rotation | 
 FRAMEBUFFER_ROTATION_270 = 3;
 | 
270 degree rotation | 
 
Log level 
 LOG_LEVEL_*  LOG_LEVEL_DEBUG = 1;
 | 
Debugging messages | 
 LOG_LEVEL_INFO = 2;
 | 
Informational messages | 
 LOG_LEVEL_WARN = 3;
 | 
Warning messages | 
 LOG_LEVEL_ERROR = 4;
 | 
Error messages | 
 LOG_LEVEL_NONE = 5;
 | 
No messages | 
 
Logging protocol 
 LOGGING_PROTOCOL_*  LOGGING_PROTOCOL_UDP = 0;
 | 
|
 LOGGING_PROTOCOL_TCP = 1;
 | 
  
Logging facility 
 LOGGING_FACILITY_*  LOGGING_FACILITY_KERNEL = 0;
 | 
Core "kernel" log messages | 
 LOGGING_FACILITY_PLATFORM = 1;
 | 
Platform log messages | 
 LOGGING_FACILITY_THREADS = 2;
 | 
Thread log messages | 
 LOGGING_FACILITY_DEVICES = 3;
 | 
Device log messages | 
 LOGGING_FACILITY_NETWORK = 4;
 | 
Network log messages | 
 LOGGING_FACILITY_STORAGE = 5;
 | 
Storage log messages | 
 LOGGING_FACILITY_FILESYSTEM = 6;
 | 
Filesystem log messages | 
 LOGGING_FACILITY_KEYBOARD = 7;
 | 
Keyboard log messages | 
 LOGGING_FACILITY_MOUSE = 8;
 | 
Mouse log messages | 
 LOGGING_FACILITY_SCSI = 9;
 | 
SCSI log messages | 
 LOGGING_FACILITY_DMA = 10;
 | 
DMA log messages | 
 LOGGING_FACILITY_GPIO = 11;
 | 
GPIO log messages | 
 LOGGING_FACILITY_MMC = 12;
 | 
MMC/SD log messages | 
 LOGGING_FACILITY_USB = 13;
 | 
USB log messages | 
 LOGGING_FACILITY_SERVICES = 14;
 | 
Services log messages | 
 LOGGING_FACILITY_HTTP = 15;
 | 
HTTP log messages | 
 LOGGING_FACILITY_IMAP = 16;
 | 
IMAP4 log messages | 
 LOGGING_FACILITY_POP = 17;
 | 
POP3 log messages | 
 LOGGING_FACILITY_SMTP = 18;
 | 
SMTP log messages | 
 LOGGING_FACILITY_TELNET = 19;
 | 
Telnet log messages | 
 LOGGING_FACILITY_SSH = 20;
 | 
SSH log messages | 
 LOGGING_FACILITY_SHELL = 21;
 | 
Shell log messages | 
 LOGGING_FACILITY_NTP = 22;
 | 
NTP log messages | 
 LOGGING_FACILITY_FTP = 23;
 | 
FTP log messages | 
 LOGGING_FACILITY_RTC = 24;
 | 
RTC log messages | 
 LOGGING_FACILITY_I2C = 25;
 | 
I2C log messages | 
 LOGGING_FACILITY_I2S = 26;
 | 
I2S log messages | 
 LOGGING_FACILITY_PWM = 27;
 | 
PWM log messages | 
 LOGGING_FACILITY_SERIAL = 28;
 | 
Serial log messages | 
 LOGGING_FACILITY_SPI = 29;
 | 
SPI log messages | 
 LOGGING_FACILITY_UART = 30;
 | 
UART log messages | 
 LOGGING_FACILITY_AUDIO = 31;
 | 
Audio log messages | 
 LOGGING_FACILITY_1WIRE = 32;
 | 
1-Wire log messages | 
 LOGGING_FACILITY_TOUCH = 33;
 | 
Touch log messages | 
 LOGGING_FACILITY_VIDEO = 34;
 | 
Video log messages | 
 LOGGING_FACILITY_CODEC = 35;
 | 
Codec log messages | 
 LOGGING_FACILITY_NFS = 36;
 | 
NFS log messages | 
 LOGGING_FACILITY_RPC = 37;
 | 
RPC log messages | 
 LOGGING_FACILITY_PCI = 38;
 | 
PCI log messages | 
 LOGGING_FACILITY_VIRTIO = 39;
 | 
VIRTIO log messages | 
 LOGGING_FACILITY_BLUETOOTH = 40;
 | 
Bluetooth log messages | 
 LOGGING_FACILITY_JOYSTICK = 41;
 | 
Joystick log messages | 
 LOGGING_FACILITY_HID = 42;
 | 
HID log messages | 
 LOGGING_FACILITY_USER = 1000;
 | 
User log messages | 
 LOGGING_FACILITY_INVALID = $FFFFFFFF;
 | 
|
 
Logging severity 
 LOGGING_SEVERITY_*  LOGGING_SEVERITY_ERROR = 0;
 | 
Error log messages | 
 LOGGING_SEVERITY_WARN  = 1;
 | 
Warning log messages | 
 LOGGING_SEVERITY_INFO = 2;
 | 
Informational log messages | 
 LOGGING_SEVERITY_DEBUG = 3;
 | 
Debugging log messages | 
 LOGGING_SEVERITY_INVALID = $FFFFFFFF;
 | 
|
Handle type 
 HANDLE_TYPE_*  HANDLE_TYPE_SPIN = 1;
 | 
|
 HANDLE_TYPE_MUTEX = 2;
 | 
|
 HANDLE_TYPE_SECTION = 3;
 | 
|
 HANDLE_TYPE_SEMAPHORE = 4;
 | 
|
 HANDLE_TYPE_SYNCHRONIZER = 5;
 | 
|
 HANDLE_TYPE_CONDITION = 6;
 | 
|
 HANDLE_TYPE_COMPLETION = 7;
 | 
|
 HANDLE_TYPE_LIST = 8;
 | 
|
 HANDLE_TYPE_QUEUE = 9;
 | 
|
 HANDLE_TYPE_THREAD = 10;
 | 
|
 HANDLE_TYPE_MESSAGESLOT = 11;
 | 
|
 HANDLE_TYPE_MAILSLOT = 12;
 | 
|
 HANDLE_TYPE_BUFFER = 13;
 | 
|
 HANDLE_TYPE_EVENT = 14;
 | 
|
 HANDLE_TYPE_TIMER = 15;
 | 
|
 HANDLE_TYPE_WORKER = 16;
 | 
|
 HANDLE_TYPE_WINDOW = 17;
 | 
|
 HANDLE_TYPE_FONT = 18;
 | 
|
 HANDLE_TYPE_KEYMAP = 19;
 | 
|
 HANDLE_TYPE_FILE = 100;
 | 
|
 HANDLE_TYPE_PIPE = 101;
 | 
|
 HANDLE_TYPE_SOCKET = 102;
 | 
|
 HANDLE_TYPE_DEVICE = 103;
 | 
|
 HANDLE_TYPE_FIRMWARE = 104;
 | 
|
 HANDLE_TYPE_USER_BASE = 1000;
 | 
Base value for user or application defined handle types | 
   
Filesystem cache mode 
 FILESYS_CACHE_MODE_*  FILESYS_CACHE_MODE_NONE = 0;
 | 
|
 FILESYS_CACHE_MODE_READONLY = 1;
 | 
|
 FILESYS_CACHE_MODE_READWRITE = 2;
 | 
Cursor arrow 
 CURSOR_ARROW_* | Standard Arrow in 32 bit ARGB | |
 CURSOR_ARROW_DEFAULT_WIDTH = 16;
 | 
Must be >= 16 and <= 64 on Raspberry Pi | 
 CURSOR_ARROW_DEFAULT_HEIGHT = 18;
 | 
Must be >= 16 and <= 64 on Raspberry Pi | 
 CURSOR_ARROW_DEFAULT_FORMAT = COLOR_FORMAT_DEFAULT;
 | 
COLOR_FORMAT_ARGB32 | 
 
Type definitions
None defined
Public variables
None defined
Function declarations
None defined
Return to Unit Reference