Files
VBoxGuest/common/constants.inc
Alexey Mikhailov 0f400bc0e0 #1 init в репу
2026-01-06 15:43:37 +03:00

150 lines
6.0 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
; PCI Device IDs
VBOX_VENDOR_ID equ 0x80EE
VBOX_DEVICE_ID equ 0xCAFE
; VMMDev Protocol
VMMDEV_REQUEST_HEADER_VERSION equ 0x10001
VMMDEV_VERSION equ 0x00010003
VMMDEV_MEM_SIZE equ 0x00400000
VMMDEV_REQ_ACKNOWLEDGE_EVENTS equ 41
VMMDEV_REQ_REPORT_GUEST_INFO equ 50
VMMDEV_REQ_GET_DISPLAY_CHANGE equ 51
VMMDEV_REQ_SET_GUEST_CAPS equ 55
; VMMDev Events
; VMMDEV_EVENT_HGCM equ 0x00000002
; VMMDEV_EVENT_DISPLAY_CHANGE equ 0x00000004
; Guest Capabilities & OS Type
VBOXOSTYPE_KOLIBRIOS equ 0x90000
; Guest Capabilities
VMMDEV_GUEST_SUPPORTS_SEAMLESS equ 0x00000001
VMMDEV_GUEST_SUPPORTS_GUEST_HOST_WINDOW_MAPPING equ 0x00000002
VMMDEV_GUEST_SUPPORTS_GRAPHICS equ 0x00000004
VMMDEV_GUEST_SUPPORTS_VRDP equ 0x00000010
VMMDEV_GUEST_SUPPORTS_HGCM equ 0x00000020
VMMDEV_GUEST_SUPPORTS_ACPI equ 0x00000040
VMMDEV_GUEST_SUPPORTS_VRDP_RESIZE equ 0x00000100
VMMDEV_GUEST_SUPPORTS_DRAG_AND_DROP equ 0x00000200
VMMDEV_GUEST_SUPPORTS_CR3_MONITORING equ 0x00000400
; Full capabilities set
VBOXGUEST_OS_SUPPORTS_CAPS equ (VMMDEV_GUEST_SUPPORTS_GRAPHICS or VMMDEV_GUEST_SUPPORTS_HGCM or VMMDEV_GUEST_SUPPORTS_DRAG_AND_DROP)
; HGCM Protocol
HGCM_PARM_TYPE_INVALID equ 0
HGCM_PARM_TYPE_32BIT equ 1
HGCM_PARM_TYPE_64BIT equ 2
HGCM_PARM_TYPE_PHYSADDR equ 3 ; deprecated
HGCM_PARM_TYPE_LINADDR equ 4
HGCM_PARM_TYPE_LINADDR_IN equ 5
HGCM_PARM_TYPE_LINADDR_OUT equ 6
HGCM_PARM_TYPE_LINADDR_LOCKED equ 7 ; НЕ ИСПОЛЬЗОВАТЬ
HGCM_PARM_TYPE_LINADDR_LOCKED_IN equ 8 ; НЕ ИСПОЛЬЗОВАТЬ
HGCM_PARM_TYPE_LINADDR_LOCKED_OUT equ 9 ; НЕ ИСПОЛЬЗОВАТЬ
HGCM_PARM_TYPE_PAGELIST equ 10
VMMDEV_HGCM_CONNECT equ 60
VMMDEV_HGCM_DISCONNECT equ 61
VMMDEV_HGCM_CALL32 equ 62
VBOX_HGCM_REQ_DONE equ 0x00000001
HGCM_LOC_TYPE_PREDEFINED equ 2
HGCM_SERVICE_NAME_MAX equ 128
HGCM_TIMEOUT_DEFAULT equ 500000
PAGE_SHIFT equ 12
; Clipboard Constants
VBOX_SHCL_GUEST_FN_MSG_GET equ 1
VBOX_SHCL_GUEST_FN_FORMATS_REPORT equ 2
VBOX_SHCL_GUEST_FN_DATA_READ equ 3
VBOX_SHCL_GUEST_FN_DATA_WRITE equ 4
VBOX_SHCL_HOST_MSG_FORMATS_REPORT equ 0
VBOX_SHCL_HOST_MSG_READ_DATA equ 1
VBOX_SHCL_FMT_UNICODETEXT equ 0x0001
VBOX_SHCL_FMT_BITMAP equ 0x0002
VBOX_SHCL_FMT_HTML equ 0x0004
VBOX_SHCL_MAX_CHUNK_SIZE equ 0x10000
; Display/VGA Constants
VGA_INDEX_PORT equ 0x01CE
VGA_DATA_PORT equ 0x01CF
VGA_INDEX_ENABLE equ 0x4
VGA_INDEX_XRES equ 0x1
VGA_INDEX_YRES equ 0x2
VGA_INDEX_BPP equ 0x3
VGA_DISABLED equ 0x00
VGA_ENABLED equ 0x01
VGA_LFB_ENABLED equ 0x40
DISP_W_MIN equ 640
DISP_H_MIN equ 480
DISP_W_MAX equ 3840
DISP_H_MAX equ 2160
; =============================================================================
; SharedFolder
; =============================================================================
; HGCM функции для SharedFolder сервиса
SHFL_FN_QUERY_MAPPINGS equ 1 ; Получить список mappings
SHFL_FN_QUERY_MAP_NAME equ 2 ; Получить имя mapping
SHFL_FN_CREATE equ 5 ; Открыть/создать файл
SHFL_FN_CLOSE equ 6 ; Закрыть файл
SHFL_FN_READ equ 7 ; Читать из файла
SHFL_FN_WRITE equ 8 ; Писать в файл
SHFL_FN_LIST equ 9 ; Список файлов в директории
SHFL_FN_READLINK equ 10 ; Чтение symlink
SHFL_FN_INFORMATION equ 11 ; Информация о файле
SHFL_FN_REMOVE equ 13 ; Удалить файл
SHFL_FN_MAP_FOLDER equ 14 ; Подключить mapping
SHFL_FN_UNMAP_FOLDER equ 15 ; Отключить mapping
SHFL_FN_RENAME equ 16 ; Переименовать
SHFL_FN_FLUSH equ 17 ; Flush буферов
; Флаги создания/открытия файла
SHFL_CF_LOOKUP equ 0x00000001 ; Только lookup (не создавать)
SHFL_CF_DIRECTORY equ 0x00000004 ; Это директория
SHFL_CF_ACCESS_READ equ 0x00000001 ; Чтение
SHFL_CF_ACCESS_WRITE equ 0x00000002 ; Запись
SHFL_CF_ACCESS_READWRITE equ 0x00000003 ; Чтение + запись
SHFL_CF_ACCESS_ALL equ 0x00000003
SHFL_CF_ACCESS_ATTR_READ equ 0x00000004 ; Чтение атрибутов
SHFL_CF_ACCESS_ATTR_WRITE equ 0x00000008 ; Запись атрибутов
SHFL_CF_ACCESS_MASK equ 0x0000000F
; Результаты операции создания
SHFL_FILE_EXISTS equ 0 ; Файл уже существует
SHFL_FILE_CREATED equ 1 ; Файл создан
SHFL_FILE_REPLACED equ 2 ; Файл заменен
SHFL_PATH_NOT_FOUND equ 3 ; Путь не найден
; Флаги для LIST операции
SHFL_LIST_NONE equ 0x00000000
SHFL_LIST_RETURN_ONE equ 0x00000001 ; Вернуть только один элемент
; Максимальные размеры
SHFL_MAX_MAPPINGS equ 10 ; Максимум mappings
SHFL_MAX_NAME_LEN equ 256 ; Максимум длина имени
SHFL_MAX_PATH_LEN equ 4096; Максимум длина пути
; =============================================================================
; KolibriOS Disk Status Codes
; =============================================================================
DISK_STATUS_GENERAL_ERROR equ -1
DISK_STATUS_OK equ 0
DISK_STATUS_INVALID_CALL equ 1
DISK_STATUS_NO_MEDIA equ 2
DISK_STATUS_END_OF_MEDIA equ 3
; =============================================================================
; Clipboard FSM States
; =============================================================================
CLIPBOARD_STATE_INIT equ 0 ; Not initialized
CLIPBOARD_STATE_CONNECTING equ 1 ; HGCM connect in progress
CLIPBOARD_STATE_READY equ 2 ; Ready to process events