If there is a chance a texture is missing you probably want to test if tex%=0 before you go and lock / setbuffer the texture, if that doesn't help comment out the call to oval, if that fixes it it sounds very much like a driver bug...
If still no, then can you remove the millisecs() dependency and use an incrementing variable and repost so I am running the same test with the same numbers as yourself.
If still no, then can you remove the millisecs() dependency and use an incrementing variable and repost so I am running the same test with the same numbers as yourself.