HighDPI was working for all of us in 1.6 with user submitted code to the wiki, and is still working. But ondrej deleted all these codes from the wiki.
The HighDPI support is revamped and improved substantially. Anybody who has problems with HighDPI should use trunk.
It makes no sense to add new code with the old workarounds any more.
This fact should be emphasized for JD as well.
Lazarus 1.8 may be forked already next month (April). After that the fixes_1_8 branch can be used instead of trunk.
JD keeps telling that Lazarus 1.6.4 broke the unicode support. I don't think so. There is something funny going on in his code.