Hi,
I just checked this against Emacs 24.5. In that version, new frames always start at 0 x 0, no matter how high they are. In addition, both versions seem to react to the `top' property -- in Emacs 24 the window is placed relative to the top (as expected). In Emacs 25 the start position when the parameter is missing or is zero places the bottom of the frame in the middle-ish of the screen, and a positive value for `top' places it further down on the screen.
I would suggest that we try to find why Emacs 24 and 25 differs, so we can revert back to the old behaviour.
A side topic: The documentation to `make-frame' seems a little bit vague. It doesn't include `top' as an attribute, on the other hand doesn't say that it accepts more properties than the ones listed. In addition, is the limitation when it comes to `width' and `height' correct ("You cannot specify either `width' or `height', you must specify neither or both.")? If seems to work just fine when I supply only a `height' property.
Sincerely,
Anders Lindgren