mirror of
https://github.com/blawar/GLideN64.git
synced 2024-07-04 10:03:36 +00:00
Do not reset gDP.otherMode.l for Quake.
Fixed Quake 64 depth issues #1169
This commit is contained in:
parent
897a100a97
commit
732c27a07d
11
src/Config.h
11
src/Config.h
|
@ -186,11 +186,12 @@ struct Config
|
|||
#define hack_ZeldaMM (1<<12) //Special hacks for Zelda MM
|
||||
#define hack_ModifyVertexXyInShader (1<<13) //Pass screen coordinates provided in gSPModifyVertex to vertes shader.
|
||||
#define hack_legoRacers (1<<14) //LEGO racers course map
|
||||
#define hack_doNotResetTLUTmode (1<<15) //Don't set TLUT mode to none after dlist end. Quake 64
|
||||
#define hack_LoadDepthTextures (1<<16) //Load textures for depth buffer
|
||||
#define hack_Snap (1<<17) //Frame buffer settings for camera detection in Pokemon Snap. Copy aux buffers at fullsync
|
||||
#define hack_MK64 (1<<18) //Hack for load MK64 HD textures properly.
|
||||
#define hack_RE2 (1<<19) //RE2 hacks.
|
||||
#define hack_doNotResetOtherModeH (1<<15) //Don't reset othermode.h after dlist end. Quake and Quake 2
|
||||
#define hack_doNotResetOtherModeL (1<<16) //Don't reset othermode.l after dlist end. Quake
|
||||
#define hack_LoadDepthTextures (1<<17) //Load textures for depth buffer
|
||||
#define hack_Snap (1<<18) //Frame buffer settings for camera detection in Pokemon Snap. Copy aux buffers at fullsync
|
||||
#define hack_MK64 (1<<19) //Hack for load MK64 HD textures properly.
|
||||
#define hack_RE2 (1<<20) //RE2 hacks.
|
||||
|
||||
extern Config config;
|
||||
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
#include <assert.h>
|
||||
#include <cstdlib>
|
||||
#include "Config.h"
|
||||
#include "RSP.h"
|
||||
#include "VI.h"
|
||||
#include "Graphics/Context.h"
|
||||
#include "DisplayWindow.h"
|
||||
|
@ -29,9 +30,12 @@ void DisplayWindow::swapBuffers()
|
|||
{
|
||||
m_drawer.drawOSD();
|
||||
_swapBuffers();
|
||||
gDP.otherMode.l = 0;
|
||||
if ((config.generalEmulation.hacks & hack_doNotResetTLUTmode) == 0)
|
||||
gDPSetTextureLUT(G_TT_NONE);
|
||||
if (!RSP.LLE) {
|
||||
if ((config.generalEmulation.hacks & hack_doNotResetOtherModeL) == 0)
|
||||
gDP.otherMode.l = 0;
|
||||
if ((config.generalEmulation.hacks & hack_doNotResetOtherModeH) == 0)
|
||||
gDP.otherMode.h = 0x0CFF;
|
||||
}
|
||||
++m_buffersSwapCount;
|
||||
}
|
||||
|
||||
|
|
|
@ -302,9 +302,10 @@ void RSP_Init()
|
|||
config.generalEmulation.hacks |= hack_rectDepthBufferCopyPD;
|
||||
else if (strstr(RSP.romname, (const char *)"Jeremy McGrath Super") != nullptr)
|
||||
config.generalEmulation.hacks |= hack_ModifyVertexXyInShader;
|
||||
else if (strstr(RSP.romname, (const char *)"Quake") != nullptr ||
|
||||
strstr(RSP.romname, (const char *)"QUAKE II") != nullptr)
|
||||
config.generalEmulation.hacks |= hack_doNotResetTLUTmode;
|
||||
else if (strstr(RSP.romname, (const char *)"Quake") != nullptr)
|
||||
config.generalEmulation.hacks |= hack_doNotResetOtherModeH|hack_doNotResetOtherModeL;
|
||||
else if (strstr(RSP.romname, (const char *)"QUAKE II") != nullptr)
|
||||
config.generalEmulation.hacks |= hack_doNotResetOtherModeH;
|
||||
else if (strstr(RSP.romname, (const char *)"quarterback_club_98") != nullptr)
|
||||
config.generalEmulation.hacks |= hack_LoadDepthTextures;
|
||||
else if (strstr(RSP.romname, (const char *)"WIN BACK") != nullptr ||
|
||||
|
|
Loading…
Reference in New Issue
Block a user