I´ve just tested the Semantic Merge-Mercurial integration (configuring p4merge as the external test merge tool).
This is my mercurial.ini:
[merge-tools]
semantic.executable = C:/Users/carlos/AppData/Local/PlasticSCM4/semanticmerge/semanticmergetool.exe
semantic.premerge=False
semantic.binary=False
semantic.args=-b=$base -s=$local -d=$other -r=$output -l=csharp -edt="p4merge.exe ""#sourcefile"" ""#destinationfile""" -emt="p4merge.exe -le 'win' -dl ""#basefile"" ""#sourcefile"" ""#destinationfile"" ""#output"""
semantic.gui=True
Semantic. checkconflicts=True
When I perform a Hg merge, the Semantic Merge tool appears, and if I select "run text merge", the text merge tool is working fine. It seems that your issue is in the P4Merge tool installation. Could you try manually launching the P4Merge tool using command line?