http://bugs.winehq.com/show_bug.cgi?id=53
*** shadow/53 Sat May 25 17:25:14 2002 --- shadow/53.tmp.928 Sat May 25 17:25:14 2002 *************** *** 0 **** --- 1,54 ---- + +============================================================================+ + | PrgWin95: Wine does not support Win9x style (16bit) coordinates | + +----------------------------------------------------------------------------+ + | Bug #: 53 Product: Wine | + | Status: NEW Version: unspecified | + | Resolution: Platform: | + | Severity: normal OS/Version: All | + | Priority: P1 Component: wine-gdi | + +----------------------------------------------------------------------------+ + | Assigned To: wine-bugs@winehq.com | + | Reported By: fgouget@codeweavers.com | + | CC list: Cc: | + +----------------------------------------------------------------------------+ + | Milestone: TargetMilestone: --- | + | URL: | + +============================================================================+ + | DESCRIPTION | + On Win9x if one draws a line to (65520,65520) it should go to the top left + corner of the Window (with an MM_TEXT coordinate system I believe). In Wine, + and, I believe, in NT too, this line would go to the bottom right corner of the + Window. + + The reason is that Win9x only supports 16bit coordinates, i.e. values ranging + from -32768 to 32767 so that 65520 is way in the negatives, while NT supports + 32bit coordinates so that 65520 is, well, what it is. + + So should all the GDI functions test whether winver==win9x and adjust the + coordinates accordingly if it is so? + If not we should document this... somewhere. I'm not sure where. Maybe it's + already documented somewhere, I did not find it. Do we have some sort of a + 'limitations' section? + + History: + This issue was revealed to me by the capture2 example of the Petzold 95. When + the mouse got out to the left of the window, the application would behave as if + it was to the far right. I traced it down to the WM_MOUSEMOVE message that was + returning values like 65520 but then noticed Win9x was doing the same. That's + when I realized it was the Rectangle API that was behaving differently. + Actually I should also test this in NT to see if NT too returns 65xxx in + WM_MOUSEMOVE for values <0, and to see how this application behaves in NT. + + See also: + http://fgouget.free.fr/wine/PrgWin95/Chap6.shtml#capture2 + + ------- Additional Comments From fgouget@codeweavers.com 2000-10-25 14:59 ------- + I tested capture2 on Windows NT and Windows 2000 and it behaves just like in + Wine. + So it is definitely a bug in the application: wherever it does 'ptEnd.x = + LOWORD (lParam) ;' it should do 'ptEnd.x = (short)LOWORD (lParam) ;' instead. + But the core of this report remains. + + + ------- Additional Comments From Speeddymon@yahoo.com 2002-05-25 17:25 ------- + This still an issue or should it be closed? \ No newline at end of file