mirror of
https://github.com/4jcraft/4jcraft.git
synced 2026-04-30 08:53:37 +00:00
159 lines
4 KiB
C
159 lines
4 KiB
C
//========= Copyright Valve Corporation, All rights reserved. ============//
|
|
//
|
|
// Purpose: Win32 replacements for XBox.
|
|
//
|
|
//=============================================================================
|
|
|
|
#if !defined(XBOXSTUBS_H) && !defined(_X360)
|
|
#define XBOXSTUBS_H
|
|
|
|
#ifdef _WIN32
|
|
#pragma once
|
|
#endif
|
|
|
|
// DecalOverdose: not available in 4J
|
|
// #include "tier0/platform.h"
|
|
|
|
#define POSIX
|
|
|
|
typedef unsigned int uint;
|
|
typedef unsigned long long int uint64;
|
|
typedef long long int int64;
|
|
|
|
#define FORCEINLINE inline
|
|
|
|
// Content creation/open flags
|
|
#define XCONTENTFLAG_NONE 0x00
|
|
#define XCONTENTFLAG_CREATENEW 0x00
|
|
#define XCONTENTFLAG_CREATEALWAYS 0x00
|
|
#define XCONTENTFLAG_OPENEXISTING 0x00
|
|
#define XCONTENTFLAG_OPENALWAYS 0x00
|
|
#define XCONTENTFLAG_TRUNCATEEXISTING 0x00
|
|
|
|
// Content attributes
|
|
#define XCONTENTFLAG_NOPROFILE_TRANSFER 0x00
|
|
#define XCONTENTFLAG_NODEVICE_TRANSFER 0x00
|
|
#define XCONTENTFLAG_STRONG_SIGNED 0x00
|
|
#define XCONTENTFLAG_ALLOWPROFILE_TRANSFER 0x00
|
|
#define XCONTENTFLAG_MOVEONLY_TRANSFER 0x00
|
|
|
|
// Console device ports
|
|
#define XDEVICE_PORT0 0
|
|
#define XDEVICE_PORT1 1
|
|
#define XDEVICE_PORT2 2
|
|
#define XDEVICE_PORT3 3
|
|
// #define XUSER_MAX_COUNT 4
|
|
#define XUSER_INDEX_NONE 0x000000FE
|
|
|
|
#define XBX_CLR_DEFAULT 0xFF000000
|
|
#define XBX_CLR_WARNING 0x0000FFFF
|
|
#define XBX_CLR_ERROR 0x000000FF
|
|
|
|
#define XBOX_MINBORDERSAFE 0
|
|
#define XBOX_MAXBORDERSAFE 0
|
|
|
|
typedef enum {
|
|
XK_NULL,
|
|
XK_BUTTON_UP,
|
|
XK_BUTTON_DOWN,
|
|
XK_BUTTON_LEFT,
|
|
XK_BUTTON_RIGHT,
|
|
XK_BUTTON_START,
|
|
XK_BUTTON_BACK,
|
|
XK_BUTTON_STICK1,
|
|
XK_BUTTON_STICK2,
|
|
XK_BUTTON_A,
|
|
XK_BUTTON_B,
|
|
XK_BUTTON_X,
|
|
XK_BUTTON_Y,
|
|
XK_BUTTON_LEFT_SHOULDER,
|
|
XK_BUTTON_RIGHT_SHOULDER,
|
|
XK_BUTTON_LTRIGGER,
|
|
XK_BUTTON_RTRIGGER,
|
|
XK_STICK1_UP,
|
|
XK_STICK1_DOWN,
|
|
XK_STICK1_LEFT,
|
|
XK_STICK1_RIGHT,
|
|
XK_STICK2_UP,
|
|
XK_STICK2_DOWN,
|
|
XK_STICK2_LEFT,
|
|
XK_STICK2_RIGHT,
|
|
XK_MAX_KEYS,
|
|
} xKey_t;
|
|
|
|
// typedef enum
|
|
//{
|
|
// XVRB_NONE, // off
|
|
// XVRB_ERROR, // fatal error
|
|
// XVRB_ALWAYS, // no matter what
|
|
// XVRB_WARNING, // non-fatal warnings
|
|
// XVRB_STATUS, // status reports
|
|
// XVRB_ALL,
|
|
// } xverbose_e;
|
|
|
|
#ifdef POSIX
|
|
typedef DWORD COLORREF;
|
|
#endif
|
|
|
|
#ifndef INVALID_HANDLE_VALUE
|
|
#define INVALID_HANDLE_VALUE ((HANDLE) - 1)
|
|
#endif
|
|
|
|
// typedef struct {
|
|
// IN_ADDR ina; // IP address (zero if not
|
|
// static/DHCP) IN_ADDR inaOnline; // Online IP address
|
|
// (zero if not online) WORD wPortOnline; // Online
|
|
// port BYTE abEnet[6]; // Ethernet MAC address BYTE
|
|
// abOnline[20]; // Online identification } XNADDR;
|
|
|
|
typedef int XNADDR;
|
|
typedef uint64 XUID;
|
|
|
|
typedef struct {
|
|
BYTE ab[8]; // xbox to xbox key identifier
|
|
} XNKID;
|
|
|
|
typedef struct {
|
|
BYTE ab[16]; // xbox to xbox key exchange key
|
|
} XNKEY;
|
|
|
|
typedef struct _XSESSION_INFO {
|
|
XNKID sessionID; // 8 bytes
|
|
XNADDR hostAddress; // 36 bytes
|
|
XNKEY keyExchangeKey; // 16 bytes
|
|
} XSESSION_INFO, *PXSESSION_INFO;
|
|
|
|
typedef struct _XSESSION_REGISTRANT {
|
|
uint64 qwMachineID;
|
|
DWORD bTrustworthiness;
|
|
DWORD bNumUsers;
|
|
XUID* rgUsers;
|
|
|
|
} XSESSION_REGISTRANT;
|
|
|
|
typedef struct _XSESSION_REGISTRATION_RESULTS {
|
|
DWORD wNumRegistrants;
|
|
XSESSION_REGISTRANT* rgRegistrants;
|
|
} XSESSION_REGISTRATION_RESULTS, *PXSESSION_REGISTRATION_RESULTS;
|
|
|
|
#define XSESSION_CREATE_HOST 0
|
|
#define XUSER_DATA_TYPE_INT32 0
|
|
#define XSESSION_CREATE_USES_ARBITRATION 0
|
|
#define XNET_QOS_LISTEN_ENABLE 0
|
|
#define XNET_QOS_LISTEN_DISABLE 0
|
|
#define XNET_QOS_LISTEN_SET_DATA 0
|
|
|
|
FORCEINLINE void XBX_ProcessEvents() {}
|
|
FORCEINLINE unsigned int XBX_GetSystemTime() { return 0; }
|
|
FORCEINLINE int XBX_GetPrimaryUserId() { return 0; }
|
|
FORCEINLINE void XBX_SetPrimaryUserId(DWORD idx) {}
|
|
FORCEINLINE int XBX_GetStorageDeviceId() { return 0; }
|
|
FORCEINLINE void XBX_SetStorageDeviceId(DWORD idx) {}
|
|
FORCEINLINE const char* XBX_GetLanguageString() { return ""; }
|
|
FORCEINLINE bool XBX_IsLocalized() { return false; }
|
|
|
|
#define XBX_INVALID_STORAGE_ID ((DWORD) - 1)
|
|
#define XBX_STORAGE_DECLINED ((DWORD) - 2)
|
|
|
|
#endif // XBOXSTUBS_H
|