From a2630204fcb0d543c571c160f4a7bfcb80e941d5 Mon Sep 17 00:00:00 2001
From: NAVras-Z <zhuangyzj@gmail.com>
Date: Sat, 4 Nov 2017 13:55:31 +0800
Subject: [PATCH] [BotW] contrasty experimental saturation... again

only scales original weight (saturation) so at least doesn't potentially mess things up like the last one.
still no idea what's that two in uf_remappedPS, together they affect the threshold of saturate/desaturate and how much.
perhaps just two calculated values based on some preset.
---
 .../bd8bba59e2149449_00000000000003c9_ps.txt             | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt b/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt
index 33fb0f62..15af86b3 100644
--- a/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt
+++ b/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt
@@ -7,11 +7,14 @@
 //----------------------------settings-------------------------------------
 
 #define adjust_bloom 1
+#define adjust_saturation 1
 #define contrasty 1
 // 0: disable, 1: enable.
 
 const float bloomFactor = 0.7; // 1.0 is neutral
 
+const float satFactor = 1.3; // 1.0 is neutral. Experimental, adjust native saturation
+
 const float gamma = 0.81; // 1.0 is neutral. Botw is already colour graded at this stage
 const float exposure = 1.17; // 1.0 is neutral
 const float vibrance = 0.008;  // 0.0 is neutral  
@@ -140,7 +143,13 @@ R125f.w = R126f.x + -(PS0f);
 R126f.y = backupReg1f + -(PS0f);
 PS1f = R126f.y;
 // 12
+
+#if (adjust_saturation == 1)
+R126f.x = satFactor * (mul_nonIEEE(PV1f.y,intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[0].x));
+#else
 R126f.x = (mul_nonIEEE(PV1f.y,intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[0].x));
+#endif
+
 PV0f.x = R126f.x;
 PV0f.y = -(R126f.z) + PV1f.x;
 // 13