mirror of
https://github.com/4jcraft/4jcraft.git
synced 2026-04-28 07:23:39 +00:00
167 lines
4.4 KiB
C
167 lines
4.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
|
|
|
|
// 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 XCONTENT_MAX_DISPLAYNAME_LENGTH 128
|
|
#define XCONTENT_MAX_FILENAME_LENGTH 42
|
|
|
|
#define XBX_INVALID_STORAGE_ID ((DWORD) -1)
|
|
#define XBX_STORAGE_DECLINED ((DWORD) -2)
|
|
|
|
#endif // XBOXSTUBS_H
|