ARB Patcher: fix tone_map_npr

This commit is contained in:
somewhatlurker
2020-07-29 23:21:36 +10:00
parent 9cf89f270a
commit 7e8ccb63d9
2 changed files with 8 additions and 2 deletions
@@ -92,7 +92,7 @@ def filename_filter(fname):
# use to tweak reasults after patching
def post_filter(fname, f_full):
# ideally this could do with a generic version in the main script...
f_full = f_full.replace('MOV.F.CC1 ', 'MOV ')
f_full = f_full.replace('MOV.F.CC1 ', 'MOVC1 ')
f_full = f_full.replace('\nBUFFER4', '\n#BUFFER4')
@@ -41,12 +41,17 @@ RET_IF_REGEX = recompile(r"(IF\s+?(.*?);[\s\S]*?)RET;\s*?ENDIF;")
RET_IF_SUB = "\\1ENDIF;\nRET (\\2);"
# RET behaves differently on AMD, so convert conditional reta into if/else
# RET behaves differently on AMD, so convert conditional rets into if/else
# (may not work properly with CAL)
CONDITIONAL_RET_REGEX = recompile(r"RET\s+?\((.*?)\);([\s\S]*?)(END\s*?$|RET;)")
CONDITIONAL_RET_SUB = "IF \\1; ELSE; \\2 ENDIF; \\3"
# CAL behaves differently on AMD, so convert conditional cals into if
CONDITIONAL_CAL_REGEX = recompile(r"CAL\s+?(.*?)\s+?\((.*?)\)\s*?;")
CONDITIONAL_CAL_SUB = "IF \\2; CAL \\1; ENDIF;"
MATCH_FP_FNAME = recompile(r".*fp")
MATCH_VP_FNAME = recompile(r".*vp")
MATCH_ALL_FNAME = recompile(r".*")
@@ -59,4 +64,5 @@ fix_repls = [
(MATCH_ALL_FNAME, SAMPLER_OFFSET_REGEX, SAMPLER_OFFSET_SUB, False),
(MATCH_ALL_FNAME, RET_IF_REGEX, RET_IF_SUB, False),
(MATCH_ALL_FNAME, CONDITIONAL_RET_REGEX, CONDITIONAL_RET_SUB, True),
(MATCH_ALL_FNAME, CONDITIONAL_CAL_REGEX, CONDITIONAL_CAL_SUB, False),
]