Two underscores :smileyhappy:
Of course they are two different identifiers, so one can be remapped with a define differently than the other.
Also when the command line option -ansi is present, the compiler only recognizes __far. That's the reason I would recommend to use __far exclusively. But when -ansi is not present and no #define maps far or __far, they behave absolutely identical.