Passing files to external program fails when in different listers

You can use {allfilepathdest} to get all the file paths from the destination file display.

The codes are all documented below External Control Codes.

But an even better way to run Beyond Compare from Opus is to use this script which will make an intelligent choice about which files to pass it based on what is selected and where. (There are some variants of the script in the thread. "LD" version is the one I modified and use, but the best one for you will depend on how you want things to work.)