fix compile errors on windows

db4
Doug Coleman 2008-12-15 22:44:01 -06:00
parent 1e8c0fb372
commit fccf6417b1
4 changed files with 1313 additions and 1313 deletions

View File

@ -1,10 +1,10 @@
USING: kernel ;
USING: kernel constants ;
IN: windows.errors
: ERROR_SUCCESS 0 ; inline
: ERROR_NO_MORE_FILES 18 ; inline
: ERROR_HANDLE_EOF 38 ; inline
: ERROR_BROKEN_PIPE 109 ; inline
: ERROR_ENVVAR_NOT_FOUND 203 ; inline
: ERROR_IO_INCOMPLETE 996 ; inline
: ERROR_IO_PENDING 997 ; inline
CONSTANT: ERROR_SUCCESS 0
CONSTANT: ERROR_NO_MORE_FILES 18
CONSTANT: ERROR_HANDLE_EOF 38
CONSTANT: ERROR_BROKEN_PIPE 109
CONSTANT: ERROR_ENVVAR_NOT_FOUND 203
CONSTANT: ERROR_IO_INCOMPLETE 996
CONSTANT: ERROR_IO_PENDING 997

View File

@ -1,38 +1,38 @@
! FUNCTION: AbortDoc
! Copyright (C) 2005, 2006 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
USING: alien alien.syntax kernel windows.types alias ;
USING: alien alien.syntax kernel windows.types alias constants ;
IN: windows.gdi32
! Stock Logical Objects
: WHITE_BRUSH 0 ; inline
: LTGRAY_BRUSH 1 ; inline
: GRAY_BRUSH 2 ; inline
: DKGRAY_BRUSH 3 ; inline
: BLACK_BRUSH 4 ; inline
: NULL_BRUSH 5 ; inline
: HOLLOW_BRUSH NULL_BRUSH ; inline
: WHITE_PEN 6 ; inline
: BLACK_PEN 7 ; inline
: NULL_PEN 8 ; inline
: OEM_FIXED_FONT 10 ; inline
: ANSI_FIXED_FONT 11 ; inline
: ANSI_VAR_FONT 12 ; inline
: SYSTEM_FONT 13 ; inline
: DEVICE_DEFAULT_FONT 14 ; inline
: DEFAULT_PALETTE 15 ; inline
: SYSTEM_FIXED_FONT 16 ; inline
: DEFAULT_GUI_FONT 17 ; inline
: DC_BRUSH 18 ; inline
: DC_PEN 19 ; inline
CONSTANT: WHITE_BRUSH 0
CONSTANT: LTGRAY_BRUSH 1
CONSTANT: GRAY_BRUSH 2
CONSTANT: DKGRAY_BRUSH 3
CONSTANT: BLACK_BRUSH 4
CONSTANT: NULL_BRUSH 5
ALIAS: HOLLOW_BRUSH NULL_BRUSH
CONSTANT: WHITE_PEN 6
CONSTANT: BLACK_PEN 7
CONSTANT: NULL_PEN 8
CONSTANT: OEM_FIXED_FONT 10
CONSTANT: ANSI_FIXED_FONT 11
CONSTANT: ANSI_VAR_FONT 12
CONSTANT: SYSTEM_FONT 13
CONSTANT: DEVICE_DEFAULT_FONT 14
CONSTANT: DEFAULT_PALETTE 15
CONSTANT: SYSTEM_FIXED_FONT 16
CONSTANT: DEFAULT_GUI_FONT 17
CONSTANT: DC_BRUSH 18
CONSTANT: DC_PEN 19
CONSTANT: BI_RGB 0
CONSTANT: BI_RLE8 1
CONSTANT: BI_RLE4 2
CONSTANT: BI_BITFIELDS 3
: BI_RGB 0 ; inline
: BI_RLE8 1 ; inline
: BI_RLE4 2 ; inline
: BI_BITFIELDS 3 ; inline
: DIB_RGB_COLORS 0 ; inline
: DIB_PAL_COLORS 1 ; inline
CONSTANT: DIB_RGB_COLORS 0
CONSTANT: DIB_PAL_COLORS 1
LIBRARY: gdi32

539
basis/windows/kernel32/kernel32.factor Normal file → Executable file
View File

@ -1,93 +1,93 @@
! Copyright (C) 2005, 2006 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
USING: alien alien.syntax kernel windows.types alias ;
USING: alien alien.syntax kernel windows.types alias constants ;
IN: windows.kernel32
: MAX_PATH 260 ; inline
CONSTANT: MAX_PATH 260
: GHND HEX: 40 ; inline
: GMEM_FIXED 0 ; inline
: GMEM_MOVEABLE 2 ; inline
: GMEM_ZEROINIT HEX: 40 ; inline
: GPTR HEX: 40 ; inline
CONSTANT: GHND HEX: 40
CONSTANT: GMEM_FIXED 0
CONSTANT: GMEM_MOVEABLE 2
CONSTANT: GMEM_ZEROINIT HEX: 40
CONSTANT: GPTR HEX: 40
: GENERIC_READ HEX: 80000000 ; inline
: GENERIC_WRITE HEX: 40000000 ; inline
: GENERIC_EXECUTE HEX: 20000000 ; inline
: GENERIC_ALL HEX: 10000000 ; inline
CONSTANT: GENERIC_READ HEX: 80000000
CONSTANT: GENERIC_WRITE HEX: 40000000
CONSTANT: GENERIC_EXECUTE HEX: 20000000
CONSTANT: GENERIC_ALL HEX: 10000000
: CREATE_NEW 1 ; inline
: CREATE_ALWAYS 2 ; inline
: OPEN_EXISTING 3 ; inline
: OPEN_ALWAYS 4 ; inline
: TRUNCATE_EXISTING 5 ; inline
CONSTANT: CREATE_NEW 1
CONSTANT: CREATE_ALWAYS 2
CONSTANT: OPEN_EXISTING 3
CONSTANT: OPEN_ALWAYS 4
CONSTANT: TRUNCATE_EXISTING 5
: FILE_LIST_DIRECTORY HEX: 00000001 ; inline
: FILE_READ_DAT HEX: 00000001 ; inline
: FILE_ADD_FILE HEX: 00000002 ; inline
: FILE_WRITE_DATA HEX: 00000002 ; inline
: FILE_ADD_SUBDIRECTORY HEX: 00000004 ; inline
: FILE_APPEND_DATA HEX: 00000004 ; inline
: FILE_CREATE_PIPE_INSTANCE HEX: 00000004 ; inline
: FILE_READ_EA HEX: 00000008 ; inline
: FILE_READ_PROPERTIES HEX: 00000008 ; inline
: FILE_WRITE_EA HEX: 00000010 ; inline
: FILE_WRITE_PROPERTIES HEX: 00000010 ; inline
: FILE_EXECUTE HEX: 00000020 ; inline
: FILE_TRAVERSE HEX: 00000020 ; inline
: FILE_DELETE_CHILD HEX: 00000040 ; inline
: FILE_READ_ATTRIBUTES HEX: 00000080 ; inline
: FILE_WRITE_ATTRIBUTES HEX: 00000100 ; inline
CONSTANT: FILE_LIST_DIRECTORY HEX: 00000001
CONSTANT: FILE_READ_DAT HEX: 00000001
CONSTANT: FILE_ADD_FILE HEX: 00000002
CONSTANT: FILE_WRITE_DATA HEX: 00000002
CONSTANT: FILE_ADD_SUBDIRECTORY HEX: 00000004
CONSTANT: FILE_APPEND_DATA HEX: 00000004
CONSTANT: FILE_CREATE_PIPE_INSTANCE HEX: 00000004
CONSTANT: FILE_READ_EA HEX: 00000008
CONSTANT: FILE_READ_PROPERTIES HEX: 00000008
CONSTANT: FILE_WRITE_EA HEX: 00000010
CONSTANT: FILE_WRITE_PROPERTIES HEX: 00000010
CONSTANT: FILE_EXECUTE HEX: 00000020
CONSTANT: FILE_TRAVERSE HEX: 00000020
CONSTANT: FILE_DELETE_CHILD HEX: 00000040
CONSTANT: FILE_READ_ATTRIBUTES HEX: 00000080
CONSTANT: FILE_WRITE_ATTRIBUTES HEX: 00000100
: FILE_SHARE_READ 1 ; inline
: FILE_SHARE_WRITE 2 ; inline
: FILE_SHARE_DELETE 4 ; inline
: FILE_SHARE_VALID_FLAGS 7 ; inline
CONSTANT: FILE_SHARE_READ 1
CONSTANT: FILE_SHARE_WRITE 2
CONSTANT: FILE_SHARE_DELETE 4
CONSTANT: FILE_SHARE_VALID_FLAGS 7
: FILE_FLAG_WRITE_THROUGH HEX: 80000000 ; inline
: FILE_FLAG_OVERLAPPED HEX: 40000000 ; inline
: FILE_FLAG_NO_BUFFERING HEX: 20000000 ; inline
: FILE_FLAG_RANDOM_ACCESS HEX: 10000000 ; inline
: FILE_FLAG_SEQUENTIAL_SCAN HEX: 08000000 ; inline
: FILE_FLAG_DELETE_ON_CLOSE HEX: 04000000 ; inline
: FILE_FLAG_BACKUP_SEMANTICS HEX: 02000000 ; inline
: FILE_FLAG_POSIX_SEMANTICS HEX: 01000000 ; inline
: FILE_FLAG_OPEN_REPARSE_POINT HEX: 00200000 ; inline
: FILE_FLAG_OPEN_NO_RECALL HEX: 00100000 ; inline
: FILE_FLAG_FIRST_PIPE_INSTANCE HEX: 00080000 ; inline
CONSTANT: FILE_FLAG_WRITE_THROUGH HEX: 80000000
CONSTANT: FILE_FLAG_OVERLAPPED HEX: 40000000
CONSTANT: FILE_FLAG_NO_BUFFERING HEX: 20000000
CONSTANT: FILE_FLAG_RANDOM_ACCESS HEX: 10000000
CONSTANT: FILE_FLAG_SEQUENTIAL_SCAN HEX: 08000000
CONSTANT: FILE_FLAG_DELETE_ON_CLOSE HEX: 04000000
CONSTANT: FILE_FLAG_BACKUP_SEMANTICS HEX: 02000000
CONSTANT: FILE_FLAG_POSIX_SEMANTICS HEX: 01000000
CONSTANT: FILE_FLAG_OPEN_REPARSE_POINT HEX: 00200000
CONSTANT: FILE_FLAG_OPEN_NO_RECALL HEX: 00100000
CONSTANT: FILE_FLAG_FIRST_PIPE_INSTANCE HEX: 00080000
: FILE_ATTRIBUTE_READONLY HEX: 00000001 ; inline
: FILE_ATTRIBUTE_HIDDEN HEX: 00000002 ; inline
: FILE_ATTRIBUTE_SYSTEM HEX: 00000004 ; inline
: FILE_ATTRIBUTE_DIRECTORY HEX: 00000010 ; inline
: FILE_ATTRIBUTE_ARCHIVE HEX: 00000020 ; inline
: FILE_ATTRIBUTE_DEVICE HEX: 00000040 ; inline
: FILE_ATTRIBUTE_NORMAL HEX: 00000080 ; inline
: FILE_ATTRIBUTE_TEMPORARY HEX: 00000100 ; inline
: FILE_ATTRIBUTE_SPARSE_FILE HEX: 00000200 ; inline
: FILE_ATTRIBUTE_REPARSE_POINT HEX: 00000400 ; inline
: FILE_ATTRIBUTE_COMPRESSED HEX: 00000800 ; inline
: FILE_ATTRIBUTE_OFFLINE HEX: 00001000 ; inline
: FILE_ATTRIBUTE_NOT_CONTENT_INDEXED HEX: 00002000 ; inline
: FILE_ATTRIBUTE_ENCRYPTED HEX: 00004000 ; inline
CONSTANT: FILE_ATTRIBUTE_READONLY HEX: 00000001
CONSTANT: FILE_ATTRIBUTE_HIDDEN HEX: 00000002
CONSTANT: FILE_ATTRIBUTE_SYSTEM HEX: 00000004
CONSTANT: FILE_ATTRIBUTE_DIRECTORY HEX: 00000010
CONSTANT: FILE_ATTRIBUTE_ARCHIVE HEX: 00000020
CONSTANT: FILE_ATTRIBUTE_DEVICE HEX: 00000040
CONSTANT: FILE_ATTRIBUTE_NORMAL HEX: 00000080
CONSTANT: FILE_ATTRIBUTE_TEMPORARY HEX: 00000100
CONSTANT: FILE_ATTRIBUTE_SPARSE_FILE HEX: 00000200
CONSTANT: FILE_ATTRIBUTE_REPARSE_POINT HEX: 00000400
CONSTANT: FILE_ATTRIBUTE_COMPRESSED HEX: 00000800
CONSTANT: FILE_ATTRIBUTE_OFFLINE HEX: 00001000
CONSTANT: FILE_ATTRIBUTE_NOT_CONTENT_INDEXED HEX: 00002000
CONSTANT: FILE_ATTRIBUTE_ENCRYPTED HEX: 00004000
: FILE_NOTIFY_CHANGE_FILE HEX: 001 ; inline
: FILE_NOTIFY_CHANGE_DIR_NAME HEX: 002 ; inline
: FILE_NOTIFY_CHANGE_ATTRIBUTES HEX: 004 ; inline
: FILE_NOTIFY_CHANGE_SIZE HEX: 008 ; inline
: FILE_NOTIFY_CHANGE_LAST_WRITE HEX: 010 ; inline
: FILE_NOTIFY_CHANGE_LAST_ACCESS HEX: 020 ; inline
: FILE_NOTIFY_CHANGE_CREATION HEX: 040 ; inline
: FILE_NOTIFY_CHANGE_EA HEX: 080 ; inline
: FILE_NOTIFY_CHANGE_SECURITY HEX: 100 ; inline
: FILE_NOTIFY_CHANGE_FILE_NAME HEX: 200 ; inline
: FILE_NOTIFY_CHANGE_ALL HEX: 3ff ; inline
CONSTANT: FILE_NOTIFY_CHANGE_FILE HEX: 001
CONSTANT: FILE_NOTIFY_CHANGE_DIR_NAME HEX: 002
CONSTANT: FILE_NOTIFY_CHANGE_ATTRIBUTES HEX: 004
CONSTANT: FILE_NOTIFY_CHANGE_SIZE HEX: 008
CONSTANT: FILE_NOTIFY_CHANGE_LAST_WRITE HEX: 010
CONSTANT: FILE_NOTIFY_CHANGE_LAST_ACCESS HEX: 020
CONSTANT: FILE_NOTIFY_CHANGE_CREATION HEX: 040
CONSTANT: FILE_NOTIFY_CHANGE_EA HEX: 080
CONSTANT: FILE_NOTIFY_CHANGE_SECURITY HEX: 100
CONSTANT: FILE_NOTIFY_CHANGE_FILE_NAME HEX: 200
CONSTANT: FILE_NOTIFY_CHANGE_ALL HEX: 3ff
: FILE_ACTION_ADDED 1 ; inline
: FILE_ACTION_REMOVED 2 ; inline
: FILE_ACTION_MODIFIED 3 ; inline
: FILE_ACTION_RENAMED_OLD_NAME 4 ; inline
: FILE_ACTION_RENAMED_NEW_NAME 5 ; inline
CONSTANT: FILE_ACTION_ADDED 1
CONSTANT: FILE_ACTION_REMOVED 2
CONSTANT: FILE_ACTION_MODIFIED 3
CONSTANT: FILE_ACTION_RENAMED_OLD_NAME 4
CONSTANT: FILE_ACTION_RENAMED_NEW_NAME 5
C-STRUCT: FILE_NOTIFY_INFORMATION
{ "DWORD" "NextEntryOffset" }
@ -96,107 +96,106 @@ C-STRUCT: FILE_NOTIFY_INFORMATION
{ "WCHAR[1]" "FileName" } ;
TYPEDEF: FILE_NOTIFY_INFORMATION* PFILE_NOTIFY_INFORMATION
: STD_INPUT_HANDLE -10 ; inline
: STD_OUTPUT_HANDLE -11 ; inline
: STD_ERROR_HANDLE -12 ; inline
CONSTANT: STD_INPUT_HANDLE -10
CONSTANT: STD_OUTPUT_HANDLE -11
CONSTANT: STD_ERROR_HANDLE -12
: INVALID_HANDLE_VALUE -1 <alien> ; inline
: INVALID_FILE_SIZE HEX: FFFFFFFF ; inline
: INVALID_SET_FILE_POINTER HEX: ffffffff ; inline
: INVALID_HANDLE_VALUE ( -- alien ) -1 <alien> ; inline
CONSTANT: INVALID_FILE_SIZE HEX: FFFFFFFF
CONSTANT: INVALID_SET_FILE_POINTER HEX: ffffffff
: FILE_BEGIN 0 ; inline
: FILE_CURRENT 1 ; inline
: FILE_END 2 ; inline
CONSTANT: FILE_BEGIN 0
CONSTANT: FILE_CURRENT 1
CONSTANT: FILE_END 2
: OF_READ 0 ;
: OF_READWRITE 2 ;
: OF_WRITE 1 ;
: OF_SHARE_COMPAT 0 ;
: OF_SHARE_DENY_NONE 64 ;
: OF_SHARE_DENY_READ 48 ;
: OF_SHARE_DENY_WRITE 32 ;
: OF_SHARE_EXCLUSIVE 16 ;
: OF_CANCEL 2048 ;
: OF_CREATE 4096 ;
: OF_DELETE 512 ;
: OF_EXIST 16384 ;
: OF_PARSE 256 ;
: OF_PROMPT 8192 ;
: OF_REOPEN 32768 ;
: OF_VERIFY 1024 ;
CONSTANT: OF_READ 0
CONSTANT: OF_READWRITE 2
CONSTANT: OF_WRITE 1
CONSTANT: OF_SHARE_COMPAT 0
CONSTANT: OF_SHARE_DENY_NONE 64
CONSTANT: OF_SHARE_DENY_READ 48
CONSTANT: OF_SHARE_DENY_WRITE 32
CONSTANT: OF_SHARE_EXCLUSIVE 16
CONSTANT: OF_CANCEL 2048
CONSTANT: OF_CREATE 4096
CONSTANT: OF_DELETE 512
CONSTANT: OF_EXIST 16384
CONSTANT: OF_PARSE 256
CONSTANT: OF_PROMPT 8192
CONSTANT: OF_REOPEN 32768
CONSTANT: OF_VERIFY 1024
: INFINITE HEX: FFFFFFFF ; inline
CONSTANT: INFINITE HEX: FFFFFFFF
! From C:\cygwin\usr\include\w32api\winbase.h
: FILE_TYPE_UNKNOWN 0 ;
: FILE_TYPE_DISK 1 ;
: FILE_TYPE_CHAR 2 ;
: FILE_TYPE_PIPE 3 ;
: FILE_TYPE_REMOTE HEX: 8000 ;
CONSTANT: FILE_TYPE_UNKNOWN 0
CONSTANT: FILE_TYPE_DISK 1
CONSTANT: FILE_TYPE_CHAR 2
CONSTANT: FILE_TYPE_PIPE 3
CONSTANT: FILE_TYPE_REMOTE HEX: 8000
: TIME_ZONE_ID_UNKNOWN 0 ; inline
: TIME_ZONE_ID_STANDARD 1 ; inline
: TIME_ZONE_ID_DAYLIGHT 2 ; inline
: TIME_ZONE_ID_INVALID HEX: FFFFFFFF ; inline
CONSTANT: TIME_ZONE_ID_UNKNOWN 0
CONSTANT: TIME_ZONE_ID_STANDARD 1
CONSTANT: TIME_ZONE_ID_DAYLIGHT 2
CONSTANT: TIME_ZONE_ID_INVALID HEX: FFFFFFFF
CONSTANT: PF_XMMI64_INSTRUCTIONS_AVAILABLE 10
CONSTANT: PF_SSE3_INSTRUCTIONS_AVAILABLE 13
: PF_XMMI64_INSTRUCTIONS_AVAILABLE 10 ; inline
: PF_SSE3_INSTRUCTIONS_AVAILABLE 13 ; inline
CONSTANT: MAX_COMPUTERNAME_LENGTH 15
CONSTANT: UNLEN 256
: MAX_COMPUTERNAME_LENGTH 15 ; inline
: UNLEN 256 ; inline
CONSTANT: PROCESS_TERMINATE HEX: 1
CONSTANT: PROCESS_CREATE_THREAD HEX: 2
CONSTANT: PROCESS_VM_OPERATION HEX: 8
CONSTANT: PROCESS_VM_READ HEX: 10
CONSTANT: PROCESS_VM_WRITE HEX: 20
CONSTANT: PROCESS_DUP_HANDLE HEX: 40
CONSTANT: PROCESS_CREATE_PROCESS HEX: 80
CONSTANT: PROCESS_SET_QUOTA HEX: 100
CONSTANT: PROCESS_SET_INFORMATION HEX: 200
CONSTANT: PROCESS_QUERY_INFORMATION HEX: 400
: PROCESS_TERMINATE ( -- n ) HEX: 1 ; inline
: PROCESS_CREATE_THREAD ( -- n ) HEX: 2 ; inline
: PROCESS_VM_OPERATION ( -- n ) HEX: 8 ; inline
: PROCESS_VM_READ ( -- n ) HEX: 10 ; inline
: PROCESS_VM_WRITE ( -- n ) HEX: 20 ; inline
: PROCESS_DUP_HANDLE ( -- n ) HEX: 40 ; inline
: PROCESS_CREATE_PROCESS ( -- n ) HEX: 80 ; inline
: PROCESS_SET_QUOTA ( -- n ) HEX: 100 ; inline
: PROCESS_SET_INFORMATION ( -- n ) HEX: 200 ; inline
: PROCESS_QUERY_INFORMATION ( -- n ) HEX: 400 ; inline
CONSTANT: MEM_COMMIT HEX: 1000
CONSTANT: MEM_RELEASE HEX: 8000
: MEM_COMMIT ( -- n ) HEX: 1000 ; inline
: MEM_RELEASE ( -- n ) HEX: 8000 ; inline
CONSTANT: PAGE_NOACCESS 1
CONSTANT: PAGE_READONLY 2
CONSTANT: PAGE_READWRITE 4
CONSTANT: PAGE_WRITECOPY 8
CONSTANT: PAGE_EXECUTE HEX: 10
CONSTANT: PAGE_EXECUTE_READ HEX: 20
CONSTANT: PAGE_EXECUTE_READWRITE HEX: 40
CONSTANT: PAGE_EXECUTE_WRITECOPY HEX: 80
CONSTANT: PAGE_GUARD HEX: 100
CONSTANT: PAGE_NOCACHE HEX: 200
: PAGE_NOACCESS 1 ; inline
: PAGE_READONLY 2 ; inline
: PAGE_READWRITE 4 ; inline
: PAGE_WRITECOPY 8 ; inline
: PAGE_EXECUTE HEX: 10 ; inline
: PAGE_EXECUTE_READ HEX: 20 ; inline
: PAGE_EXECUTE_READWRITE HEX: 40 ; inline
: PAGE_EXECUTE_WRITECOPY HEX: 80 ; inline
: PAGE_GUARD HEX: 100 ; inline
: PAGE_NOCACHE HEX: 200 ; inline
CONSTANT: SEC_BASED HEX: 00200000
CONSTANT: SEC_NO_CHANGE HEX: 00400000
CONSTANT: SEC_FILE HEX: 00800000
CONSTANT: SEC_IMAGE HEX: 01000000
CONSTANT: SEC_VLM HEX: 02000000
CONSTANT: SEC_RESERVE HEX: 04000000
CONSTANT: SEC_COMMIT HEX: 08000000
CONSTANT: SEC_NOCACHE HEX: 10000000
ALIAS: MEM_IMAGE SEC_IMAGE
: SEC_BASED HEX: 00200000 ; inline
: SEC_NO_CHANGE HEX: 00400000 ; inline
: SEC_FILE HEX: 00800000 ; inline
: SEC_IMAGE HEX: 01000000 ; inline
: SEC_VLM HEX: 02000000 ; inline
: SEC_RESERVE HEX: 04000000 ; inline
: SEC_COMMIT HEX: 08000000 ; inline
: SEC_NOCACHE HEX: 10000000 ; inline
: MEM_IMAGE SEC_IMAGE ; inline
CONSTANT: ERROR_ALREADY_EXISTS 183
: ERROR_ALREADY_EXISTS 183 ; inline
CONSTANT: FILE_MAP_ALL_ACCESS HEX: f001f
CONSTANT: FILE_MAP_READ 4
CONSTANT: FILE_MAP_WRITE 2
CONSTANT: FILE_MAP_COPY 1
: FILE_MAP_ALL_ACCESS HEX: f001f ;
: FILE_MAP_READ 4 ;
: FILE_MAP_WRITE 2 ;
: FILE_MAP_COPY 1 ;
: THREAD_MODE_BACKGROUND_BEGIN HEX: 10000 ; inline
: THREAD_MODE_BACKGROUND_END HEX: 20000 ; inline
: THREAD_PRIORITY_ABOVE_NORMAL 1 ; inline
: THREAD_PRIORITY_BELOW_NORMAL -1 ; inline
: THREAD_PRIORITY_HIGHEST 2 ; inline
: THREAD_PRIORITY_IDLE -15 ; inline
: THREAD_PRIORITY_LOWEST -2 ; inline
: THREAD_PRIORITY_NORMAL 0 ; inline
: THREAD_PRIORITY_TIME_CRITICAL 15 ; inline
CONSTANT: THREAD_MODE_BACKGROUND_BEGIN HEX: 10000
CONSTANT: THREAD_MODE_BACKGROUND_END HEX: 20000
CONSTANT: THREAD_PRIORITY_ABOVE_NORMAL 1
CONSTANT: THREAD_PRIORITY_BELOW_NORMAL -1
CONSTANT: THREAD_PRIORITY_HIGHEST 2
CONSTANT: THREAD_PRIORITY_IDLE -15
CONSTANT: THREAD_PRIORITY_LOWEST -2
CONSTANT: THREAD_PRIORITY_NORMAL 0
CONSTANT: THREAD_PRIORITY_TIME_CRITICAL 15
C-STRUCT: OVERLAPPED
{ "UINT_PTR" "internal" }
@ -321,74 +320,74 @@ C-STRUCT: GUID
{ { "UCHAR" 8 } "Data4" } ;
: SE_CREATE_TOKEN_NAME "SeCreateTokenPrivilege" ;
: SE_ASSIGNPRIMARYTOKEN_NAME "SeAssignPrimaryTokenPrivilege" ;
: SE_LOCK_MEMORY_NAME "SeLockMemoryPrivilege" ;
: SE_INCREASE_QUOTA_NAME "SeIncreaseQuotaPrivilege" ;
: SE_UNSOLICITED_INPUT_NAME "SeUnsolicitedInputPrivilege" ;
: SE_MACHINE_ACCOUNT_NAME "SeMachineAccountPrivilege" ;
: SE_TCB_NAME "SeTcbPrivilege" ;
: SE_SECURITY_NAME "SeSecurityPrivilege" ;
: SE_TAKE_OWNERSHIP_NAME "SeTakeOwnershipPrivilege" ;
: SE_LOAD_DRIVER_NAME "SeLoadDriverPrivilege" ;
: SE_SYSTEM_PROFILE_NAME "SeSystemProfilePrivilege" ;
: SE_SYSTEMTIME_NAME "SeSystemtimePrivilege" ;
: SE_PROF_SINGLE_PROCESS_NAME "SeProfileSingleProcessPrivilege" ;
: SE_INC_BASE_PRIORITY_NAME "SeIncreaseBasePriorityPrivilege" ;
: SE_CREATE_PAGEFILE_NAME "SeCreatePagefilePrivilege" ;
: SE_CREATE_PERMANENT_NAME "SeCreatePermanentPrivilege" ;
: SE_BACKUP_NAME "SeBackupPrivilege" ;
: SE_RESTORE_NAME "SeRestorePrivilege" ;
: SE_SHUTDOWN_NAME "SeShutdownPrivilege" ;
: SE_DEBUG_NAME "SeDebugPrivilege" ;
: SE_AUDIT_NAME "SeAuditPrivilege" ;
: SE_SYSTEM_ENVIRONMENT_NAME "SeSystemEnvironmentPrivilege" ;
: SE_CHANGE_NOTIFY_NAME "SeChangeNotifyPrivilege" ;
: SE_REMOTE_SHUTDOWN_NAME "SeRemoteShutdownPrivilege" ;
: SE_UNDOCK_NAME "SeUndockPrivilege" ;
: SE_ENABLE_DELEGATION_NAME "SeEnableDelegationPrivilege" ;
: SE_MANAGE_VOLUME_NAME "SeManageVolumePrivilege" ;
: SE_IMPERSONATE_NAME "SeImpersonatePrivilege" ;
: SE_CREATE_GLOBAL_NAME "SeCreateGlobalPrivilege" ;
CONSTANT: SE_CREATE_TOKEN_NAME "SeCreateTokenPrivilege"
CONSTANT: SE_ASSIGNPRIMARYTOKEN_NAME "SeAssignPrimaryTokenPrivilege"
CONSTANT: SE_LOCK_MEMORY_NAME "SeLockMemoryPrivilege"
CONSTANT: SE_INCREASE_QUOTA_NAME "SeIncreaseQuotaPrivilege"
CONSTANT: SE_UNSOLICITED_INPUT_NAME "SeUnsolicitedInputPrivilege"
CONSTANT: SE_MACHINE_ACCOUNT_NAME "SeMachineAccountPrivilege"
CONSTANT: SE_TCB_NAME "SeTcbPrivilege"
CONSTANT: SE_SECURITY_NAME "SeSecurityPrivilege"
CONSTANT: SE_TAKE_OWNERSHIP_NAME "SeTakeOwnershipPrivilege"
CONSTANT: SE_LOAD_DRIVER_NAME "SeLoadDriverPrivilege"
CONSTANT: SE_SYSTEM_PROFILE_NAME "SeSystemProfilePrivilege"
CONSTANT: SE_SYSTEMTIME_NAME "SeSystemtimePrivilege"
CONSTANT: SE_PROF_SINGLE_PROCESS_NAME "SeProfileSingleProcessPrivilege"
CONSTANT: SE_INC_BASE_PRIORITY_NAME "SeIncreaseBasePriorityPrivilege"
CONSTANT: SE_CREATE_PAGEFILE_NAME "SeCreatePagefilePrivilege"
CONSTANT: SE_CREATE_PERMANENT_NAME "SeCreatePermanentPrivilege"
CONSTANT: SE_BACKUP_NAME "SeBackupPrivilege"
CONSTANT: SE_RESTORE_NAME "SeRestorePrivilege"
CONSTANT: SE_SHUTDOWN_NAME "SeShutdownPrivilege"
CONSTANT: SE_DEBUG_NAME "SeDebugPrivilege"
CONSTANT: SE_AUDIT_NAME "SeAuditPrivilege"
CONSTANT: SE_SYSTEM_ENVIRONMENT_NAME "SeSystemEnvironmentPrivilege"
CONSTANT: SE_CHANGE_NOTIFY_NAME "SeChangeNotifyPrivilege"
CONSTANT: SE_REMOTE_SHUTDOWN_NAME "SeRemoteShutdownPrivilege"
CONSTANT: SE_UNDOCK_NAME "SeUndockPrivilege"
CONSTANT: SE_ENABLE_DELEGATION_NAME "SeEnableDelegationPrivilege"
CONSTANT: SE_MANAGE_VOLUME_NAME "SeManageVolumePrivilege"
CONSTANT: SE_IMPERSONATE_NAME "SeImpersonatePrivilege"
CONSTANT: SE_CREATE_GLOBAL_NAME "SeCreateGlobalPrivilege"
: SE_GROUP_MANDATORY HEX: 00000001 ;
: SE_GROUP_ENABLED_BY_DEFAULT HEX: 00000002 ;
: SE_GROUP_ENABLED HEX: 00000004 ;
: SE_GROUP_OWNER HEX: 00000008 ;
: SE_GROUP_USE_FOR_DENY_ONLY HEX: 00000010 ;
: SE_GROUP_LOGON_ID HEX: C0000000 ;
: SE_GROUP_RESOURCE HEX: 20000000 ;
CONSTANT: SE_GROUP_MANDATORY HEX: 00000001
CONSTANT: SE_GROUP_ENABLED_BY_DEFAULT HEX: 00000002
CONSTANT: SE_GROUP_ENABLED HEX: 00000004
CONSTANT: SE_GROUP_OWNER HEX: 00000008
CONSTANT: SE_GROUP_USE_FOR_DENY_ONLY HEX: 00000010
CONSTANT: SE_GROUP_LOGON_ID HEX: C0000000
CONSTANT: SE_GROUP_RESOURCE HEX: 20000000
: SE_PRIVILEGE_ENABLED_BY_DEFAULT HEX: 00000001 ;
: SE_PRIVILEGE_ENABLED HEX: 00000002 ;
: SE_PRIVILEGE_REMOVE HEX: 00000004 ;
: SE_PRIVILEGE_USED_FOR_ACCESS HEX: 80000000 ;
CONSTANT: SE_PRIVILEGE_ENABLED_BY_DEFAULT HEX: 00000001
CONSTANT: SE_PRIVILEGE_ENABLED HEX: 00000002
CONSTANT: SE_PRIVILEGE_REMOVE HEX: 00000004
CONSTANT: SE_PRIVILEGE_USED_FOR_ACCESS HEX: 80000000
: PRIVILEGE_SET_ALL_NECESSARY 1 ;
CONSTANT: PRIVILEGE_SET_ALL_NECESSARY 1
: SE_OWNER_DEFAULTED HEX: 00000001 ;
: SE_GROUP_DEFAULTED HEX: 00000002 ;
: SE_DACL_PRESENT HEX: 00000004 ;
: SE_DACL_DEFAULTED HEX: 00000008 ;
: SE_SACL_PRESENT HEX: 00000010 ;
: SE_SACL_DEFAULTED HEX: 00000020 ;
: SE_DACL_AUTO_INHERIT_REQ HEX: 00000100 ;
: SE_SACL_AUTO_INHERIT_REQ HEX: 00000200 ;
: SE_DACL_AUTO_INHERITED HEX: 00000400 ;
: SE_SACL_AUTO_INHERITED HEX: 00000800 ;
: SE_DACL_PROTECTED HEX: 00001000 ;
: SE_SACL_PROTECTED HEX: 00002000 ;
: SE_SELF_RELATIVE HEX: 00008000 ;
CONSTANT: SE_OWNER_DEFAULTED HEX: 00000001
CONSTANT: SE_GROUP_DEFAULTED HEX: 00000002
CONSTANT: SE_DACL_PRESENT HEX: 00000004
CONSTANT: SE_DACL_DEFAULTED HEX: 00000008
CONSTANT: SE_SACL_PRESENT HEX: 00000010
CONSTANT: SE_SACL_DEFAULTED HEX: 00000020
CONSTANT: SE_DACL_AUTO_INHERIT_REQ HEX: 00000100
CONSTANT: SE_SACL_AUTO_INHERIT_REQ HEX: 00000200
CONSTANT: SE_DACL_AUTO_INHERITED HEX: 00000400
CONSTANT: SE_SACL_AUTO_INHERITED HEX: 00000800
CONSTANT: SE_DACL_PROTECTED HEX: 00001000
CONSTANT: SE_SACL_PROTECTED HEX: 00002000
CONSTANT: SE_SELF_RELATIVE HEX: 00008000
: ANYSIZE_ARRAY 1 ; inline
CONSTANT: ANYSIZE_ARRAY 1
: MAXIMUM_WAIT_OBJECTS 64 ; inline
: MAXIMUM_SUSPEND_COUNT HEX: 7f ; inline
: WAIT_OBJECT_0 0 ; inline
: WAIT_ABANDONED_0 128 ; inline
: WAIT_TIMEOUT 258 ; inline
: WAIT_IO_COMPLETION HEX: c0 ; inline
: WAIT_FAILED HEX: ffffffff ; inline
CONSTANT: MAXIMUM_WAIT_OBJECTS 64
CONSTANT: MAXIMUM_SUSPEND_COUNT HEX: 7f
CONSTANT: WAIT_OBJECT_0 0
CONSTANT: WAIT_ABANDONED_0 128
CONSTANT: WAIT_TIMEOUT 258
CONSTANT: WAIT_IO_COMPLETION HEX: c0
CONSTANT: WAIT_FAILED HEX: ffffffff
C-STRUCT: LUID
{ "DWORD" "LowPart" }
@ -427,7 +426,7 @@ C-STRUCT: BY_HANDLE_FILE_INFORMATION
{ "DWORD" "nFileIndexLow" } ;
TYPEDEF: BY_HANDLE_FILE_INFORMATION* LPBY_HANDLE_FILE_INFORMATION
: OFS_MAXPATHNAME 128 ;
CONSTANT: OFS_MAXPATHNAME 128
C-STRUCT: OFSTRUCT
{ "BYTE" "cBytes" }
@ -489,34 +488,34 @@ C-STRUCT: SECURITY_ATTRIBUTES
{ "LPVOID" "lpSecurityDescriptor" }
{ "BOOL" "bInheritHandle" } ;
: HANDLE_FLAG_INHERIT 1 ; inline
: HANDLE_FLAG_PROTECT_FROM_CLOSE 2 ; inline
CONSTANT: HANDLE_FLAG_INHERIT 1
CONSTANT: HANDLE_FLAG_PROTECT_FROM_CLOSE 2
: STARTF_USESHOWWINDOW HEX: 00000001 ; inline
: STARTF_USESIZE HEX: 00000002 ; inline
: STARTF_USEPOSITION HEX: 00000004 ; inline
: STARTF_USECOUNTCHARS HEX: 00000008 ; inline
: STARTF_USEFILLATTRIBUTE HEX: 00000010 ; inline
: STARTF_RUNFULLSCREEN HEX: 00000020 ; inline
: STARTF_FORCEONFEEDBACK HEX: 00000040 ; inline
: STARTF_FORCEOFFFEEDBACK HEX: 00000080 ; inline
: STARTF_USESTDHANDLES HEX: 00000100 ; inline
: STARTF_USEHOTKEY HEX: 00000200 ; inline
CONSTANT: STARTF_USESHOWWINDOW HEX: 00000001
CONSTANT: STARTF_USESIZE HEX: 00000002
CONSTANT: STARTF_USEPOSITION HEX: 00000004
CONSTANT: STARTF_USECOUNTCHARS HEX: 00000008
CONSTANT: STARTF_USEFILLATTRIBUTE HEX: 00000010
CONSTANT: STARTF_RUNFULLSCREEN HEX: 00000020
CONSTANT: STARTF_FORCEONFEEDBACK HEX: 00000040
CONSTANT: STARTF_FORCEOFFFEEDBACK HEX: 00000080
CONSTANT: STARTF_USESTDHANDLES HEX: 00000100
CONSTANT: STARTF_USEHOTKEY HEX: 00000200
: PIPE_ACCESS_INBOUND 1 ; inline
: PIPE_ACCESS_OUTBOUND 2 ; inline
: PIPE_ACCESS_DUPLEX 3 ; inline
CONSTANT: PIPE_ACCESS_INBOUND 1
CONSTANT: PIPE_ACCESS_OUTBOUND 2
CONSTANT: PIPE_ACCESS_DUPLEX 3
: PIPE_TYPE_BYTE 0 ; inline
: PIPE_TYPE_MESSAGE 4 ; inline
CONSTANT: PIPE_TYPE_BYTE 0
CONSTANT: PIPE_TYPE_MESSAGE 4
: PIPE_READMODE_BYTE 0 ; inline
: PIPE_READMODE_MESSAGE 2 ; inline
CONSTANT: PIPE_READMODE_BYTE 0
CONSTANT: PIPE_READMODE_MESSAGE 2
: PIPE_WAIT 0 ; inline
: PIPE_NOWAIT 1 ; inline
CONSTANT: PIPE_WAIT 0
CONSTANT: PIPE_NOWAIT 1
: PIPE_UNLIMITED_INSTANCES 255 ; inline
CONSTANT: PIPE_UNLIMITED_INSTANCES 255
LIBRARY: kernel32
! FUNCTION: _hread
@ -641,29 +640,29 @@ ALIAS: CreateNamedPipe CreateNamedPipeW
! FUNCTION: CreateNlsSecurityDescriptor
FUNCTION: BOOL CreatePipe ( PHANDLE hReadPipe, PHANDLE hWritePipe, LPSECURITY_ATTRIBUTES lpPipeAttributes, DWORD nSize ) ;
: DEBUG_PROCESS HEX: 00000001 ;
: DEBUG_ONLY_THIS_PROCESS HEX: 00000002 ;
: CREATE_SUSPENDED HEX: 00000004 ;
: DETACHED_PROCESS HEX: 00000008 ;
: CREATE_NEW_CONSOLE HEX: 00000010 ;
: NORMAL_PRIORITY_CLASS HEX: 00000020 ;
: IDLE_PRIORITY_CLASS HEX: 00000040 ;
: HIGH_PRIORITY_CLASS HEX: 00000080 ;
: REALTIME_PRIORITY_CLASS HEX: 00000100 ;
: CREATE_NEW_PROCESS_GROUP HEX: 00000200 ;
: CREATE_UNICODE_ENVIRONMENT HEX: 00000400 ;
: CREATE_SEPARATE_WOW_VDM HEX: 00000800 ;
: CREATE_SHARED_WOW_VDM HEX: 00001000 ;
: CREATE_FORCEDOS HEX: 00002000 ;
: BELOW_NORMAL_PRIORITY_CLASS HEX: 00004000 ;
: ABOVE_NORMAL_PRIORITY_CLASS HEX: 00008000 ;
: CREATE_BREAKAWAY_FROM_JOB HEX: 01000000 ;
: CREATE_WITH_USERPROFILE HEX: 02000000 ;
: CREATE_DEFAULT_ERROR_MODE HEX: 04000000 ;
: CREATE_NO_WINDOW HEX: 08000000 ;
: PROFILE_USER HEX: 10000000 ;
: PROFILE_KERNEL HEX: 20000000 ;
: PROFILE_SERVER HEX: 40000000 ;
CONSTANT: DEBUG_PROCESS HEX: 00000001
CONSTANT: DEBUG_ONLY_THIS_PROCESS HEX: 00000002
CONSTANT: CREATE_SUSPENDED HEX: 00000004
CONSTANT: DETACHED_PROCESS HEX: 00000008
CONSTANT: CREATE_NEW_CONSOLE HEX: 00000010
CONSTANT: NORMAL_PRIORITY_CLASS HEX: 00000020
CONSTANT: IDLE_PRIORITY_CLASS HEX: 00000040
CONSTANT: HIGH_PRIORITY_CLASS HEX: 00000080
CONSTANT: REALTIME_PRIORITY_CLASS HEX: 00000100
CONSTANT: CREATE_NEW_PROCESS_GROUP HEX: 00000200
CONSTANT: CREATE_UNICODE_ENVIRONMENT HEX: 00000400
CONSTANT: CREATE_SEPARATE_WOW_VDM HEX: 00000800
CONSTANT: CREATE_SHARED_WOW_VDM HEX: 00001000
CONSTANT: CREATE_FORCEDOS HEX: 00002000
CONSTANT: BELOW_NORMAL_PRIORITY_CLASS HEX: 00004000
CONSTANT: ABOVE_NORMAL_PRIORITY_CLASS HEX: 00008000
CONSTANT: CREATE_BREAKAWAY_FROM_JOB HEX: 01000000
CONSTANT: CREATE_WITH_USERPROFILE HEX: 02000000
CONSTANT: CREATE_DEFAULT_ERROR_MODE HEX: 04000000
CONSTANT: CREATE_NO_WINDOW HEX: 08000000
CONSTANT: PROFILE_USER HEX: 10000000
CONSTANT: PROFILE_KERNEL HEX: 20000000
CONSTANT: PROFILE_SERVER HEX: 40000000
FUNCTION: BOOL CreateProcessW ( LPCTSTR lpApplicationname,
LPTSTR lpCommandLine,

2015
basis/windows/messages/messages.factor Normal file → Executable file

File diff suppressed because it is too large Load Diff