diff --git a/Source/Glide64/Settings.cpp b/Source/Glide64/Settings.cpp index 31adcd70a..0fa3ad074 100644 --- a/Source/Glide64/Settings.cpp +++ b/Source/Glide64/Settings.cpp @@ -72,7 +72,7 @@ CSettings::CSettings() : m_force_microcheck(false), //check microcode each frame, for mixed F3DEX-S2DEX games m_force_quad3d(false), //force 0xb5 command to be quad, not line 3d m_clip_zmin(false), //enable near z clipping -clip_zmax(0), //enable far plane clipping; + m_clip_zmax(false), //enable far plane clipping; adjust_aspect(0), //adjust screen aspect for wide screen mode force_calc_sphere(0), //use spheric mapping only, Ridge Racer 64 pal230(0), //set special scale for PAL games @@ -173,7 +173,7 @@ void CSettings::RegisterSettings(void) game_setting(Set_force_microcheck, "force_microcheck", false); game_setting(Set_force_quad3d, "force_quad3d", false); game_setting(Set_clip_zmin, "clip_zmin", false); - game_setting(Set_clip_zmax, "clip_zmax", 1); + game_setting(Set_clip_zmax, "clip_zmax", true); game_setting(Set_fast_crc, "fast_crc", true); game_setting(Set_adjust_aspect, "adjust_aspect", 1); game_setting(Set_zmode_compare_less, "zmode_compare_less", 0); @@ -726,7 +726,7 @@ void CSettings::ReadGameSettings(const char * name) m_force_microcheck = GetSetting(Set_force_microcheck) != 0; m_force_quad3d = GetSetting(Set_force_quad3d) != 0; m_clip_zmin = GetSetting(Set_clip_zmin) != 0; - g_settings->clip_zmax = GetSetting(Set_clip_zmax); + m_clip_zmax = GetSetting(Set_clip_zmax) != 0; m_fast_crc = GetSetting(Set_fast_crc) != 0; g_settings->adjust_aspect = GetSetting(Set_adjust_aspect); g_settings->zmode_compare_less = GetSetting(Set_zmode_compare_less); diff --git a/Source/Glide64/Settings.h b/Source/Glide64/Settings.h index 1755297dd..d4d759927 100644 --- a/Source/Glide64/Settings.h +++ b/Source/Glide64/Settings.h @@ -246,7 +246,7 @@ public: inline bool force_microcheck(void) const { return m_force_microcheck; } //check microcode each frame, for mixed F3DEX-S2DEX games inline bool force_quad3d(void) const { return m_force_quad3d; } //force 0xb5 command to be quad, not line 3d inline bool clip_zmin(void) const { return m_clip_zmin; } //enable near z clipping - int clip_zmax; //enable far plane clipping; + inline bool clip_zmax(void) const { return m_clip_zmax; } //enable far plane clipping int adjust_aspect; //adjust screen aspect for wide screen mode int force_calc_sphere; //use spheric mapping only, Ridge Racer 64 int pal230; //set special scale for PAL games @@ -365,6 +365,7 @@ private: bool m_force_microcheck; bool m_force_quad3d; bool m_clip_zmin; + bool m_clip_zmax; hacks_t m_hacks; }; diff --git a/Source/Glide64/Util.cpp b/Source/Glide64/Util.cpp index af7d4908b..7e14b64c5 100644 --- a/Source/Glide64/Util.cpp +++ b/Source/Glide64/Util.cpp @@ -806,7 +806,7 @@ void do_triangle_stuff(uint16_t linew, int old_interpolate) // what else?? do th { rdp.clip &= ~CLIP_ZMIN; } - if (!g_settings->clip_zmax) + if (!g_settings->clip_zmax()) { rdp.clip &= ~CLIP_ZMAX; }