diff options
author | Nikolay Korolev <nickvnuk@gmail.com> | 2021-01-24 11:42:45 +0100 |
---|---|---|
committer | Nikolay Korolev <nickvnuk@gmail.com> | 2021-01-24 11:42:45 +0100 |
commit | ee89c485fcce7f3b9a189f7a80b3a1b2933f79bd (patch) | |
tree | ba8ccf97a2fd5aff3180f7ad600a53a4d29cf9ff /src/core/common.h | |
parent | fix (diff) | |
download | re3-ee89c485fcce7f3b9a189f7a80b3a1b2933f79bd.tar re3-ee89c485fcce7f3b9a189f7a80b3a1b2933f79bd.tar.gz re3-ee89c485fcce7f3b9a189f7a80b3a1b2933f79bd.tar.bz2 re3-ee89c485fcce7f3b9a189f7a80b3a1b2933f79bd.tar.lz re3-ee89c485fcce7f3b9a189f7a80b3a1b2933f79bd.tar.xz re3-ee89c485fcce7f3b9a189f7a80b3a1b2933f79bd.tar.zst re3-ee89c485fcce7f3b9a189f7a80b3a1b2933f79bd.zip |
Diffstat (limited to '')
-rw-r--r-- | src/core/common.h | 51 |
1 files changed, 36 insertions, 15 deletions
diff --git a/src/core/common.h b/src/core/common.h index ace15ee1..e1d64523 100644 --- a/src/core/common.h +++ b/src/core/common.h @@ -11,17 +11,34 @@ #include <string.h> #include <math.h> -#if defined _WIN32 && defined WITHWINDOWS -#include <windows.h> +#if !defined RW_D3D9 && defined LIBRW +#undef WITHD3D +#undef WITHDINPUT +#endif + +#if (defined WITHD3D && !defined LIBRW) +#define WITHWINDOWS #endif -#if defined _WIN32 && defined WITHD3D +#if defined _WIN32 && defined WITHWINDOWS && !defined _INC_WINDOWS #include <windows.h> -#ifndef USE_D3D9 -#include <d3d8types.h> -#else -#include <d3d9types.h> #endif + +#ifdef WITHD3D + #ifdef LIBRW + #define WITH_D3D // librw includes d3d9 itself via this right now + #else + #ifndef USE_D3D9 + #include <d3d8types.h> + #else + #include <d3d9types.h> + #endif + #endif +#endif + +#ifdef WITHDINPUT +#define DIRECTINPUT_VERSION 0x0800 +#include <dinput.h> #endif #include <rwcore.h> @@ -52,14 +69,6 @@ #define rwVENDORID_ROCKSTAR 0x0253F2 -// Get rid of bullshit windows definitions, we're not running on an 8086 -#ifdef far -#undef far -#endif -#ifdef near -#undef near -#endif - #define Max(a,b) ((a) > (b) ? (a) : (b)) #define Min(a,b) ((a) < (b) ? (a) : (b)) @@ -191,6 +200,18 @@ inline uint32 ldb(uint32 p, uint32 s, uint32 w) #define SCALE_AND_CENTER_X(x) SCREEN_STRETCH_X(x) #endif +// these are temp marcos while we don't implement all PSP UI coordinates +#define PSP_DEFAULT_SCREEN_WIDTH (480) +#define PSP_DEFAULT_SCREEN_HEIGHT (272) + +#define PSP_SCALE_TO_PS2_X(a) (a * ((float)DEFAULT_SCREEN_WIDTH / PSP_DEFAULT_SCREEN_WIDTH)) +#define PSP_SCALE_TO_PS2_Y(a) (a * ((float)DEFAULT_SCREEN_HEIGHT / PSP_DEFAULT_SCREEN_HEIGHT)) + +#define PSP_SCREEN_SCALE_X(a) SCREEN_STRETCH_X(PSP_SCALE_TO_PS2_X(a)) +#define PSP_SCREEN_SCALE_Y(a) SCREEN_STRETCH_Y(PSP_SCALE_TO_PS2_Y(a)) +#define PSP_SCREEN_SCALE_FROM_RIGHT(a) (SCREEN_WIDTH - PSP_SCREEN_SCALE_X(a)) +#define PSP_SCREEN_SCALE_FROM_BOTTOM(a) (SCREEN_HEIGHT - PSP_SCREEN_SCALE_Y(a)) + #include "maths.h" #include "Vector.h" #include "Vector2D.h" |