veljko
01-13-2004, 11:04 PM
Hi-
Just wanted to say that we have finished our second game called "Caribbean Puzzle"-
Since this is the first version we are looking for people to help us out by checking out the game and the site and reporting any glithches or bugs or dislikes about the game or the site!
the url is
www.lemonade-p.com
thanx a bunch!:)
Came across a crash bug when running in windowed mode:
When I drag the window off the left edge of the screen all is fine until I try to drag it back on: I'm able to move it maybe 4 pixels to the right when the game crashes with an access violation in the MSVCRT.DLL.
A quick jump into the debugger show the offending instruction to be a 'rep movs' (see dump below):
77C42F10 push ebp
77C42F11 mov ebp,esp
77C42F13 push edi
77C42F14 push esi
77C42F15 mov esi,dword ptr [ebp+0Ch]
77C42F18 mov ecx,dword ptr [ebp+10h]
77C42F1B mov edi,dword ptr [ebp+8]
77C42F1E mov eax,ecx
77C42F20 mov edx,ecx
77C42F22 add eax,esi
77C42F24 cmp edi,esi
77C42F26 jbe 77C42F30
77C42F28 cmp edi,eax
77C42F2A jb 77C430A8
77C42F30 test edi,3
77C42F36 jne 77C42F4C
77C42F38 shr ecx,2
77C42F3B and edx,3
77C42F3E cmp ecx,8
77C42F41 jb 77C42F6C
77C42F43 rep movs dword ptr [edi],dword ptr [esi] <= access violation
77C42F45 jmp dword ptr [edx*4+77C43058h]
77C42F4C mov eax,edi
77C42F4E mov edx,3
77C42F53 sub ecx,4
77C42F56 jb 77C42F64
77C42F58 and eax,3
77C42F5B add ecx,eax
...
This error occurs when running with a desktop color depth of 16 or 32 bits, and when running in single or duel monitor mode.
Speaking of duel monitor mode, when running in duel mode and I drag the window off the right edge of the screen, then drag it back to the left, the window contents are re-drawn at the left edge of the screen. No crash occurs, but it appears as if the client area contents are wrapping around to the left edge of the screen.
Both these glitches lead me to believe that direct screen accesses are being used to update the window contents, instead of straight blits (why??). I apologize if I'm wrong in my assumption, but if not, I guess you need to look at the screen re-paint code and see what's up.
Hope this helps,
David
mkovacic
01-15-2004, 04:21 AM
Originally posted by DGuy
Both these glitches lead me to believe that direct screen accesses are being used to update the window contents, instead of straight blits (why??). I apologize if I'm wrong in my assumption, but if not, I guess you need to look at the screen re-paint code and see what's up.
Yeah, your assumption is correct, we do it to get around the infamous nVidia driver bug. I'll take a look at it, thanks for the feedback.