mirror of https://github.com/PCSX2/pcsx2.git
GregMiscellaneous: zzogl-pg: Add a new header. More work on zerogs.h.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/GregMiscellaneous@3928 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
parent
bce1dfbade
commit
9bde4de02a
|
@ -96,6 +96,7 @@ set(zzoglHeaders
|
||||||
ZZoglCRTC.h
|
ZZoglCRTC.h
|
||||||
ZZoglMath.h
|
ZZoglMath.h
|
||||||
ZZoglShaders.h
|
ZZoglShaders.h
|
||||||
|
ZZoglShoots.h
|
||||||
ZZGl.h
|
ZZGl.h
|
||||||
ZZLog.h)
|
ZZLog.h)
|
||||||
|
|
||||||
|
|
|
@ -385,6 +385,8 @@ union tex_0_info
|
||||||
#define TEX_HIGHLIGHT 2
|
#define TEX_HIGHLIGHT 2
|
||||||
#define TEX_HIGHLIGHT2 3
|
#define TEX_HIGHLIGHT2 3
|
||||||
|
|
||||||
|
bool SaveTexture(const char* filename, u32 textarget, u32 tex, int width, int height);
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
int lcm;
|
int lcm;
|
||||||
|
|
|
@ -38,6 +38,7 @@ using namespace std;
|
||||||
#include "targets.h"
|
#include "targets.h"
|
||||||
#include "ZZoglShaders.h"
|
#include "ZZoglShaders.h"
|
||||||
#include "ZZoglFlushHack.h"
|
#include "ZZoglFlushHack.h"
|
||||||
|
#include "ZZoglShoots.h"
|
||||||
|
|
||||||
#ifdef _MSC_VER
|
#ifdef _MSC_VER
|
||||||
#pragma warning(disable:4244)
|
#pragma warning(disable:4244)
|
||||||
|
@ -594,6 +595,9 @@ int CALLBACK GSsetupRecording(int start, void* pData)
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int ZZSave(s8* pbydata);
|
||||||
|
bool ZZLoad(s8* pbydata);
|
||||||
|
|
||||||
s32 CALLBACK GSfreeze(int mode, freezeData *data)
|
s32 CALLBACK GSfreeze(int mode, freezeData *data)
|
||||||
{
|
{
|
||||||
FUNCLOG
|
FUNCLOG
|
||||||
|
|
|
@ -157,6 +157,7 @@
|
||||||
<Unit filename="../../ZZoglShaders.cpp" />
|
<Unit filename="../../ZZoglShaders.cpp" />
|
||||||
<Unit filename="../../ZZoglShaders.h" />
|
<Unit filename="../../ZZoglShaders.h" />
|
||||||
<Unit filename="../../ZZoglShoots.cpp" />
|
<Unit filename="../../ZZoglShoots.cpp" />
|
||||||
|
<Unit filename="../../ZZoglShoots.h" />
|
||||||
<Unit filename="../../ZZoglVB.cpp" />
|
<Unit filename="../../ZZoglVB.cpp" />
|
||||||
<Unit filename="../../common.h" />
|
<Unit filename="../../common.h" />
|
||||||
<Unit filename="../../glprocs.c">
|
<Unit filename="../../glprocs.c">
|
||||||
|
|
|
@ -22,7 +22,10 @@
|
||||||
|
|
||||||
#ifdef USE_OLD_REGS
|
#ifdef USE_OLD_REGS
|
||||||
#include "Regs.h"
|
#include "Regs.h"
|
||||||
#else
|
#else
|
||||||
|
|
||||||
|
bool CheckChangeInClut(u32 highdword, u32 psm); // returns true if clut will change after this tex0 op
|
||||||
|
|
||||||
enum GIF_REG
|
enum GIF_REG
|
||||||
{
|
{
|
||||||
GIF_REG_PRIM = 0x00,
|
GIF_REG_PRIM = 0x00,
|
||||||
|
|
|
@ -23,6 +23,8 @@
|
||||||
|
|
||||||
#ifdef USE_OLD_REGS
|
#ifdef USE_OLD_REGS
|
||||||
|
|
||||||
|
bool CheckChangeInClut(u32 highdword, u32 psm); // returns true if clut will change after this tex0 op
|
||||||
|
|
||||||
enum GIF_REG
|
enum GIF_REG
|
||||||
{
|
{
|
||||||
GIF_REG_PRIM = 0x00,
|
GIF_REG_PRIM = 0x00,
|
||||||
|
|
|
@ -24,6 +24,7 @@
|
||||||
#include "ZZoglCRTC.h"
|
#include "ZZoglCRTC.h"
|
||||||
#include "GLWin.h"
|
#include "GLWin.h"
|
||||||
#include "ZZoglShaders.h"
|
#include "ZZoglShaders.h"
|
||||||
|
#include "ZZoglShoots.h"
|
||||||
#include "rasterfont.h" // simple font
|
#include "rasterfont.h" // simple font
|
||||||
|
|
||||||
//------------------ Defines
|
//------------------ Defines
|
||||||
|
|
|
@ -24,8 +24,8 @@
|
||||||
#include "Mem.h"
|
#include "Mem.h"
|
||||||
#include "zerogs.h"
|
#include "zerogs.h"
|
||||||
#include "GLWin.h"
|
#include "GLWin.h"
|
||||||
|
|
||||||
#include "ZZoglShaders.h"
|
#include "ZZoglShaders.h"
|
||||||
|
|
||||||
#include "targets.h"
|
#include "targets.h"
|
||||||
#include "rasterfont.h" // simple font
|
#include "rasterfont.h" // simple font
|
||||||
|
|
||||||
|
@ -163,6 +163,8 @@ u32 ptexBilinearBlocks = 0;
|
||||||
u32 ptexConv32to16 = 0;
|
u32 ptexConv32to16 = 0;
|
||||||
int g_nDepthBias = 0;
|
int g_nDepthBias = 0;
|
||||||
|
|
||||||
|
extern void Delete_Avi_Capture();
|
||||||
|
|
||||||
//------------------ Code
|
//------------------ Code
|
||||||
|
|
||||||
bool IsGLExt(const char* szTargetExtension)
|
bool IsGLExt(const char* szTargetExtension)
|
||||||
|
|
|
@ -205,7 +205,7 @@ void FlushTransferRanges(const tex0Info* ptex); //zz
|
||||||
void SetTexVariables(int context, FRAGMENTSHADER* pfragment); // zz
|
void SetTexVariables(int context, FRAGMENTSHADER* pfragment); // zz
|
||||||
void SetTexInt(int context, FRAGMENTSHADER* pfragment, int settexint); // zz
|
void SetTexInt(int context, FRAGMENTSHADER* pfragment, int settexint); // zz
|
||||||
void SetAlphaVariables(const alphaInfo& ainfo); // zzz
|
void SetAlphaVariables(const alphaInfo& ainfo); // zzz
|
||||||
void ResetAlphaVariables();
|
//void ResetAlphaVariables();
|
||||||
|
|
||||||
inline void SetAlphaTestInt(pixTest curtest);
|
inline void SetAlphaTestInt(pixTest curtest);
|
||||||
|
|
||||||
|
@ -2360,9 +2360,9 @@ void SetTexVariablesInt(int context, int bilinear, const tex0Info& tex0, bool Ch
|
||||||
// } \
|
// } \
|
||||||
// else { \
|
// else { \
|
||||||
|
|
||||||
void ResetAlphaVariables() {
|
//void ResetAlphaVariables() {
|
||||||
FUNCLOG
|
// FUNCLOG
|
||||||
}
|
//}
|
||||||
|
|
||||||
inline void NeedFactor(int w)
|
inline void NeedFactor(int w)
|
||||||
{
|
{
|
||||||
|
|
|
@ -30,6 +30,7 @@
|
||||||
#include "zerogs.h"
|
#include "zerogs.h"
|
||||||
#include "targets.h"
|
#include "targets.h"
|
||||||
#include "Mem.h"
|
#include "Mem.h"
|
||||||
|
#include "ZZoglShoots.h"
|
||||||
|
|
||||||
// AVI Capture
|
// AVI Capture
|
||||||
int s_avicapturing = 0;
|
int s_avicapturing = 0;
|
||||||
|
|
|
@ -0,0 +1,35 @@
|
||||||
|
/* ZZ Open GL graphics plugin
|
||||||
|
* Copyright (c)2009-2010 zeydlitz@gmail.com, arcum42@gmail.com
|
||||||
|
* Based on Zerofrog's ZeroGS KOSMOS (c)2005-2008
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; either version 2 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program; if not, write to the Free Software
|
||||||
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef ZZOGLSHOOTS_H_INCLUDED
|
||||||
|
#define ZZOGLSHOOTS_H_INCLUDED
|
||||||
|
|
||||||
|
void SaveSnapshot(const char* filename);
|
||||||
|
bool SaveRenderTarget(const char* filename, int width, int height, int jpeg);
|
||||||
|
bool SaveTexture(const char* filename, u32 textarget, u32 tex, int width, int height);
|
||||||
|
bool SaveJPEG(const char* filename, int width, int height, const void* pdata, int quality);
|
||||||
|
bool SaveTGA(const char* filename, int width, int height, void* pdata);
|
||||||
|
void Stop_Avi();
|
||||||
|
void Delete_Avi_Capture();
|
||||||
|
|
||||||
|
void StartCapture();
|
||||||
|
void StopCapture();
|
||||||
|
void CaptureFrame();
|
||||||
|
|
||||||
|
#endif // ZZOGLSHOOTS_H_INCLUDED
|
|
@ -389,7 +389,7 @@ void VB::CheckFrame(int tbp)
|
||||||
if ((prndr != NULL) && (prndr->psm != gsfb.psm))
|
if ((prndr != NULL) && (prndr->psm != gsfb.psm))
|
||||||
{
|
{
|
||||||
// behavior for dest alpha varies
|
// behavior for dest alpha varies
|
||||||
ResetAlphaVariables();
|
// ResetAlphaVariables();
|
||||||
}
|
}
|
||||||
|
|
||||||
bChanged = CheckFrameResolveRender(tbp);
|
bChanged = CheckFrameResolveRender(tbp);
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
#include "zerogs.h"
|
#include "zerogs.h"
|
||||||
#include "targets.h"
|
#include "targets.h"
|
||||||
#include "ZZoglShaders.h"
|
#include "ZZoglShaders.h"
|
||||||
|
|
||||||
#ifdef ZEROGS_SSE2
|
#ifdef ZEROGS_SSE2
|
||||||
#include <emmintrin.h>
|
#include <emmintrin.h>
|
||||||
#endif
|
#endif
|
||||||
|
@ -57,6 +58,8 @@ bool g_bSaveZUpdate = 0;
|
||||||
int VALIDATE_THRESH = 8;
|
int VALIDATE_THRESH = 8;
|
||||||
u32 TEXDESTROY_THRESH = 16;
|
u32 TEXDESTROY_THRESH = 16;
|
||||||
|
|
||||||
|
void _Resolve(const void* psrc, int fbp, int fbw, int fbh, int psm, u32 fbm, bool mode);
|
||||||
|
|
||||||
// ------------------------- Useful inlines ------------------------------------
|
// ------------------------- Useful inlines ------------------------------------
|
||||||
|
|
||||||
// memory size for one row of texture. It depends on width of texture and number of bytes
|
// memory size for one row of texture. It depends on width of texture and number of bytes
|
||||||
|
@ -514,7 +517,7 @@ void CRenderTarget::Update(int context, CRenderTarget* pdepth)
|
||||||
// reset since settings changed
|
// reset since settings changed
|
||||||
vb[0].bVarsTexSync = 0;
|
vb[0].bVarsTexSync = 0;
|
||||||
|
|
||||||
ResetAlphaVariables();
|
// ResetAlphaVariables();
|
||||||
}
|
}
|
||||||
|
|
||||||
void CRenderTarget::ConvertTo32()
|
void CRenderTarget::ConvertTo32()
|
||||||
|
|
|
@ -119,32 +119,11 @@ void TransferLocalLocal();
|
||||||
void RenderCRTC(int interlace);
|
void RenderCRTC(int interlace);
|
||||||
void ResetRenderTarget(int index);
|
void ResetRenderTarget(int index);
|
||||||
|
|
||||||
bool CheckChangeInClut(u32 highdword, u32 psm); // returns true if clut will change after this tex0 op
|
|
||||||
|
|
||||||
int ZZSave(s8* pbydata);
|
|
||||||
bool ZZLoad(s8* pbydata);
|
|
||||||
|
|
||||||
void SaveSnapshot(const char* filename);
|
|
||||||
bool SaveRenderTarget(const char* filename, int width, int height, int jpeg);
|
|
||||||
bool SaveTexture(const char* filename, u32 textarget, u32 tex, int width, int height);
|
|
||||||
bool SaveJPEG(const char* filename, int width, int height, const void* pdata, int quality);
|
|
||||||
bool SaveTGA(const char* filename, int width, int height, void* pdata);
|
|
||||||
void Stop_Avi();
|
|
||||||
void Delete_Avi_Capture();
|
|
||||||
|
|
||||||
// private methods
|
// private methods
|
||||||
void FlushSysMem(const RECT* prc);
|
|
||||||
void _Resolve(const void* psrc, int fbp, int fbw, int fbh, int psm, u32 fbm, bool mode);
|
|
||||||
|
|
||||||
// returns the first and last addresses aligned to a page that cover
|
// returns the first and last addresses aligned to a page that cover
|
||||||
void GetRectMemAddress(int& start, int& end, int psm, int x, int y, int w, int h, int bp, int bw);
|
void GetRectMemAddress(int& start, int& end, int psm, int x, int y, int w, int h, int bp, int bw);
|
||||||
|
|
||||||
void NeedFactor(int w);
|
|
||||||
void ResetAlphaVariables();
|
|
||||||
|
|
||||||
void StartCapture();
|
|
||||||
void StopCapture();
|
|
||||||
void CaptureFrame();
|
|
||||||
|
|
||||||
// The size in bytes of x strings (of texture).
|
// The size in bytes of x strings (of texture).
|
||||||
inline int MemorySize(int x)
|
inline int MemorySize(int x)
|
||||||
|
|
Loading…
Reference in New Issue