diff --git a/Graphics/RDP/RDP_state.c b/Graphics/RDP/RDP_state.c new file mode 100644 index 00000000..1fc37378 --- /dev/null +++ b/Graphics/RDP/RDP_state.c @@ -0,0 +1,3 @@ +#include "RDP_state.h" + +RDPInfo __RDP; diff --git a/Graphics/RDP/RDP_state.h b/Graphics/RDP/RDP_state.h new file mode 100644 index 00000000..4ed3e1ff --- /dev/null +++ b/Graphics/RDP/RDP_state.h @@ -0,0 +1,28 @@ +#ifndef _RDP_STATE_H +#define _RDP_STATE_H + +#include + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +#define MAXCMD 0x100000 + +typedef struct +{ + uint32_t w2, w3; + uint32_t cmd_ptr; + uint32_t cmd_cur; + uint32_t cmd_data[MAXCMD + 32]; +} RDPInfo; + +extern RDPInfo __RDP; + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/Makefile.common b/Makefile.common index 259a89d9..54feccde 100644 --- a/Makefile.common +++ b/Makefile.common @@ -324,6 +324,7 @@ SOURCES_CXX += $(ROOT_DIR)/Graphics/RSP/gSP_funcs.cpp \ SOURCES_C += $(ROOT_DIR)/Graphics/RSP/gSP_funcs_C.c \ $(ROOT_DIR)/Graphics/RDP/gDP_funcs_C.c \ + $(ROOT_DIR)/Graphics/RDP/RDP_state.c \ $(ROOT_DIR)/Graphics/RSP/RSP_state.c ifeq ($(HAVE_GLIDE64),1) diff --git a/gles2n64/src/RDP.c b/gles2n64/src/RDP.c index bd6e049d..42af85d5 100644 --- a/gles2n64/src/RDP.c +++ b/gles2n64/src/RDP.c @@ -12,8 +12,6 @@ #include "gSP.h" #include "RDP.h" -RDPInfo __RDP; - enum { gspTexRect = 0, diff --git a/gles2n64/src/RDP.h b/gles2n64/src/RDP.h index 94594a4f..c7fc081f 100644 --- a/gles2n64/src/RDP.h +++ b/gles2n64/src/RDP.h @@ -3,9 +3,7 @@ #include -#ifndef MAXCMD -#define MAXCMD 0x100000 -#endif +#include "../../Graphics/RDP/RDP_state.h" #ifndef maxCMDMask #define maxCMDMask (MAXCMD - 1) @@ -15,16 +13,6 @@ extern "C" { #endif -typedef struct -{ - uint32_t w2, w3; - uint32_t cmd_ptr; - uint32_t cmd_cur; - uint32_t cmd_data[MAXCMD + 32]; -} RDPInfo; - -extern RDPInfo __RDP; - void RDP_Init(void); void RDP_Half_1(uint32_t _c); void RDP_ProcessRDPList(); diff --git a/libretro/msvc/msvc-2013/msvc-2013.vcxproj b/libretro/msvc/msvc-2013/msvc-2013.vcxproj index e6f9ca1c..a7fae977 100644 --- a/libretro/msvc/msvc-2013/msvc-2013.vcxproj +++ b/libretro/msvc/msvc-2013/msvc-2013.vcxproj @@ -595,6 +595,16 @@ CompileAsC CompileAsC + + CompileAsC + CompileAsC + CompileAsC + CompileAsC + CompileAsC + CompileAsC + CompileAsC + CompileAsC + CompileAsC CompileAsC diff --git a/libretro/msvc/msvc-2013/msvc-2013.vcxproj.filters b/libretro/msvc/msvc-2013/msvc-2013.vcxproj.filters index bd876f1b..cd2a8044 100644 --- a/libretro/msvc/msvc-2013/msvc-2013.vcxproj.filters +++ b/libretro/msvc/msvc-2013/msvc-2013.vcxproj.filters @@ -213,6 +213,9 @@ Source Files\glide2gl\src\Glide64 + + Source Files\Graphics\RDP + Source Files\Graphics\RSP diff --git a/mupen64plus-video-gliden64/src/RDP.cpp b/mupen64plus-video-gliden64/src/RDP.cpp index 6a72121c..10beb99c 100644 --- a/mupen64plus-video-gliden64/src/RDP.cpp +++ b/mupen64plus-video-gliden64/src/RDP.cpp @@ -367,8 +367,6 @@ void RDP_TriShadeTxtrZ( uint32_t _w0, uint32_t _w1 ) gln64gDPTriShadeTxtrZ(_w0, _w1); } -RDPInfo __RDP; - void RDP_Init() { // Initialize RDP commands to RDP_UNKNOWN diff --git a/mupen64plus-video-gliden64/src/RDP.h b/mupen64plus-video-gliden64/src/RDP.h index 5c1165d2..3899cd34 100644 --- a/mupen64plus-video-gliden64/src/RDP.h +++ b/mupen64plus-video-gliden64/src/RDP.h @@ -1,19 +1,12 @@ #ifndef RDP_H #define RDP_H -#define MAXCMD 0x100000 +#include + +#include "../../Graphics/RDP/RDP_state.h" + const unsigned int maxCMDMask = MAXCMD - 1; -typedef struct -{ - uint32_t w2, w3; - uint32_t cmd_ptr; - uint32_t cmd_cur; - uint32_t cmd_data[MAXCMD + 32]; -} RDPInfo; - -extern RDPInfo __RDP; - void RDP_Init(void); void RDP_Half_1(uint32_t _c); void RDP_ProcessRDPList(void);