diff options
| author | iCatButler <i.am.catbutler@gmail.com> | 2016-03-26 10:07:46 +0000 |
|---|---|---|
| committer | iCatButler <i.am.catbutler@gmail.com> | 2016-03-26 10:07:46 +0000 |
| commit | b1f5a6ce4d7b9156910078300bfdf4ff0fd8ccf0 (patch) | |
| tree | 4c58fda9c7fe906b59c482165adcd041c4ab37ac /libpcsxcore/pgxp_gte.h | |
| parent | 7767ea4acbae995cd8e6302bdb7c97e89748dfd8 (diff) | |
- Move pgxp_gpu source files into correct folder.
- Trace 16 bit reads and writes, invalidate register or memory (fixes UI glitches)
Diffstat (limited to 'libpcsxcore/pgxp_gte.h')
| -rw-r--r-- | libpcsxcore/pgxp_gte.h | 69 |
1 files changed, 36 insertions, 33 deletions
diff --git a/libpcsxcore/pgxp_gte.h b/libpcsxcore/pgxp_gte.h index c97c5b29..7ad20823 100644 --- a/libpcsxcore/pgxp_gte.h +++ b/libpcsxcore/pgxp_gte.h @@ -23,36 +23,39 @@ *
* Created on: 12 Mar 2016
* Author: iCatButler
-***************************************************************************/ - -#ifndef _PGXP_GTE_H_ -#define _PGXP_GTE_H_ - -#include "psxcommon.h" - -void PGXP_Init(); // initialise memory -char* PGXP_GetMem(); // return pointer to precision memory - -// -- GTE functions -// Transforms -void PGXP_pushSXYZ2f(float _x, float _y, float _z); -void PGXP_pushSXYZ2s(s64 _x, s64 _y, s64 _z); -int PGXP_NLCIP_valid(); -float PGXP_NCLIP(); - -// Data transfer tracking -void PGXP_MFC2(u32 gpr, u32 gtr, u32 value); // copy GTE reg to GPR reg (MFC2) -void PGXP_MTC2(u32 gpr, u32 gtr, u32 value); // copy GPR reg to GTR reg (MTC2) -void PGXP_LWC2(u32 addr, u32 gtr, u32 value); // copy memory to GTE reg -void PGXP_SWC2(u32 addr, u32 gtr, u32 value); // copy GTE reg to memory - -// -- CPU functions -// Data transfer tracking -void PGPR_L32(u32 addr, u32 code, u32 value); // load 32bit word -void PGPR_S32(u32 addr, u32 code, u32 value); // store 32bit word - -// Memory Read/Write hooks -u32 PGXP_psxMemRead32Trace(u32 mem, u32 code); -void PGXP_psxMemWrite32Trace(u32 mem, u32 value, u32 code); - -#endif /* _PGXP_GTE_H_ */ +***************************************************************************/
+
+#ifndef _PGXP_GTE_H_
+#define _PGXP_GTE_H_
+
+#include "psxcommon.h"
+
+void PGXP_Init(); // initialise memory
+char* PGXP_GetMem(); // return pointer to precision memory
+
+// -- GTE functions
+// Transforms
+void PGXP_pushSXYZ2f(float _x, float _y, float _z);
+void PGXP_pushSXYZ2s(s64 _x, s64 _y, s64 _z);
+int PGXP_NLCIP_valid();
+float PGXP_NCLIP();
+
+// Data transfer tracking
+void PGXP_MFC2(u32 gpr, u32 gtr, u32 value); // copy GTE reg to GPR reg (MFC2)
+void PGXP_MTC2(u32 gpr, u32 gtr, u32 value); // copy GPR reg to GTR reg (MTC2)
+void PGXP_LWC2(u32 addr, u32 gtr, u32 value); // copy memory to GTE reg
+void PGXP_SWC2(u32 addr, u32 gtr, u32 value); // copy GTE reg to memory
+
+// -- CPU functions
+// Data transfer tracking
+void PGPR_L32(u32 addr, u32 code, u32 value); // load 32bit word
+void PGPR_S32(u32 addr, u32 code, u32 value); // store 32bit word
+
+// Memory Read/Write hooks
+u32 PGXP_psxMemRead32Trace(u32 mem, u32 code);
+void PGXP_psxMemWrite32Trace(u32 mem, u32 value, u32 code);
+
+u16 PGXP_psxMemRead16Trace(u32 mem, u32 code);
+void PGXP_psxMemWrite16Trace(u32 mem, u16 value, u32 code);
+
+#endif /* _PGXP_GTE_H_ */
|
