I was wondering why in some source code there are these macros like FAR and PASCAL. What do they mean and do?
Going by memory here,
FAR is a fall back to 16-bit days when heap memory was was segmented. NEAR data was limited in size and faster, FAR was allowed to be larger but more expensive.
To the best of my knowledge, in 32-bit land it's a macro that collapses to nothing.
PASCAL is a calling convention also used heavily in 16-bit days. It has since been replaced by stdcall.
Both are left in for backward compatibility.