VOGONS


DirectDraw Wrapper

Topic actions

Reply 61 of 101, by jclampy

User metadata
Rank Newbie
Rank
Newbie

Here is a game that is definately not playable unless something helps it:

Testing RayForce aka Layer Section or Galactic Attack

WinXP32bit, ATI4670HD, P4EE 3.4Ghz
Unless otherwise specified I will use;
Video Driver VSync = Always ON
Monitor refresh rate = 75Hz
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Using nothing else at all
Monitor refresh rate = 60Hz
Game ran at 200+FPS

Using nothing else at all
*For this test only I wil turn OFF video card VSync.
Monitor refresh rate = 60Hz
Game ran at 200+FPS

Aqrit ddraw.dll FakeVsync = 1 and FakeVsyncInterval = 0
Monitor refresh rate = 60Hz
Game ran at 62-63FPS

Aqrit ddraw.dll FakeVsync = 1 and FakeVsyncInterval = 17
Game ran at 59FPS
OMG! The audio is incredible when heard at correct speed.

Using only DXWind with DirectX1~6 and Primary Surface ticked at 960x720
Unknown FPS as could not get a readout, but it was definately faster than 60FPS
Noticed 'screen tearing'

DXWind with DirectX1~6 and Primary Surface ticked at 960x720
Aqrit ddraw.dll FakeVsync = 1 and FakeVsyncInterval = 16
Game ran at 63-66FPS
Little too fast. NO 'screen tearing'

DXWind with DirectX1~6 and Primary Surface ticked at 960x720
Aqrit ddraw.dll FakeVsync = 1 and FakeVsyncInterval = 18
Game ran at 56-59FPS
Little too slow. NO 'screen tearing'

DXWind with DirectX1~6 and Primary Surface ticked at 960x720
Aqrit ddraw.dll FakeVsync = 1 and FakeVsyncInterval = 17
Game ran at 59-62FPS
This is running perfectly fine. NO 'screen tearing'

Well done Aqrit your ddraw.dll has made this game playable!

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Summary:
Play fullscreen (640x480) use Aqrit ddraw.dll = NO 'screen tearing'
Play windowed (custom size) use DXWind and Aqrit ddraw.dll = NO 'screen tearing'
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

PS: This game also can use the OpenGL 2.0 DXGL wrapper and play in whatever
desktop resolution and refresh rate that you are currently in. For example I played
the game in fullscreen 1280x960 at 60Hz for a rock solid 60FPS. Although there
are some resolutions that DXGL does not like, for example; 1152x864

Last edited by jclampy on 2012-12-27, 12:32. Edited 1 time in total.

Reply 63 of 101, by jclampy

User metadata
Rank Newbie
Rank
Newbie

Testing Raiden II

WinXP32bit, ATI4670HD, P4EE 3.4Ghz
Unless otherwise specified I will use;
Video Driver VSync = Always ON
Monitor refresh rate = 75Hz
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Using nothing else at all
Monitor refresh rate = 60Hz
Game ran at 58-59FPS
Noticed 'screen tearing'
Noticed 'flickering tree shadows'

Using nothing else at all
*For this test only I wil turn OFF video card VSync.
Monitor refresh rate = 60Hz
Game ran at 58-59FPS
Noticed 'screen tearing'
Noticed 'flickering tree shadows'

Aqrit ddraw.dll with everything set to 0 (disabled mode)
Game crashed when trying to go fullscreen.
Had to manually force close down of game to get back to desktop.

Aqrit ddraw.dll FakeVsync = 1 and FakeVsyncInterval = 0
Game crashed when trying to go fullscreen.
Had to manually force close down of game to get back to desktop.

Using only DXWind with Automatic and Primary Surface and 'Correct mouse position' ticked at 1024x768
Unknown FPS as could not get a readout, but seemed to be running normally.
Noticed 'screen tearing'
NO 'flickering tree shadows'
Noticed crash on game exit
Noticed swapping multiple times between fullscreen and windowed modes causes game to crash

DXWind with Automatic and Primary Surface and 'Correct mouse position' ticked at 1024x768
Aqrit ddraw.dll FakeVsync = 1 and FakeVsyncInterval = 0
Game ran at 59-60FPS
NO 'screen tearing'
NO 'flickering tree shadows'
NO crash on game exit
NO crashing when swapping multiple times between fullscreen and windowed modes.

Well done Aqrit your ddraw.dll works great for this game when used with DXWind!

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Summary:
Play windowed (custom size) use DXWind and Aqrit ddraw.dll
= NO 'screen tearing', NO 'flickering tree shadows', NO game crashing what-so-ever.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

******************************************************************************************
Aqrit, I wonder if possible to make your ddraw.dll work with this game without crashing
when trying to go fullscreen? Then we could use your ddraw.dll without other utilities.
I tried changing everything in your config.sys to 0 (disabled) but still crashed when going to fullscreen.
DXGL crashes when loading game and DXTweaker doesn't seem to get activated at all.
******************************************************************************************

PS: Out of interest here is test with D3DWindower and Aqrit ddraw.dll;
D3DWindower with these modifications to the default settings:
dimensions 1024x768, tick 'Use DDraw Flip Blt', untick 'DDraw Primary Blt'
Aqrit ddraw.dll FakeVsync = 1 and FakeVsyncInterval = 0
Game ran at 59-61FPS
NO 'screen tearing'
Noticed 'flickering tree shadows'
NO crash on game exit
Noticed swapping multiple times between fullscreen and windowed modes causes game to crash

Reply 64 of 101, by aqrit

User metadata
Rank Member
Rank
Member

A "maxfps" option is possible but it is not high on my list of things to do.
I could also make verticle blank occur every so many "ticks" rather than the fairly relative way it works now.
Heck, I could use real vsync ( though the screen still tears in HEL ) by importing D3DKMTWaitForVerticalBlankEvent

Game crashed when trying to go fullscreen.

Are you starting in fullscreen mode, or did you start in windowed mode and switch to fullscreen mode?

The ShowFPS may not show up in windowed mode. There is no 100% way of determing the window position so the fps display defaults to screen position 0,0 which might be clipped off if outside the game window.

Usually when everything is “off” and the game crashes, it because of the way the interfaces are hooked. I wrap the entire object rather than just the virtual-table pointer. Dark Omen for instance was crashing when it received a wrapped ddraw object in its Idirect3D2->CreateDevice() call. I'd have to wrap the d3d interface so I can unwrap the ddraw interface... then I'd have to wrap all interfaces that come into contact with the d3d interface... etc.

I'm considering doing a rewrite to hook just the vtable pointer.

Anyways here is a build that logs some interfaces it comes into contact with. http://bitpatch.com/downloads/ddwrapper_logguid.zip
It creates a text file in the game directory named ddwrapper.log
PM me the logs for a working “windowed” and for a crashing everything off “fullscreen”

Reply 65 of 101, by jclampy

User metadata
Rank Newbie
Rank
Newbie

Raiden II always starts in windowed mode and then you must select fullscreen from the menu option. (Everytime unfortunately)

Yes, I did notice FPS display sometimes doesn't show in windowed mode.
If I didn't mention it before then it was because I wasn't too concerned. Only noticed it on a few games and when using DXWind to force windowed mode your ddraw.dll usually displayed FPS as far as I remember.

Logs sent through PM now.

As a thought; are you thinking of allowing users to be able to specify a resolution & refresh rate for displaying of fullscreen output in the future?

Also, I am not sure about when to use the fixes in your aqrit.cfg file. Do you know any examples of games off the top of your head that require certain fixes so I could learn what the various problems look like. Thanks.

Reply 67 of 101, by jclampy

User metadata
Rank Newbie
Rank
Newbie

Sorry Cloudstr but I don't see that happening with games I have tested so far. Could you explain with more detail so maybe someone can reproduce the issue?

From what I have tested, if you want to run a game in a window use DXWind with Aqrit ddraw.dll and game will not run change fast/slow/fast..
DXWind with DirectX1~6 and Primary Surface ticked
Aqrit ddraw.dll FakeVsync = 1 and FakeVsyncInterval = 0 or 17

If you want to run a game fullscreen you only have to use Aqrit ddraw.dll
Aqrit ddraw.dll FakeVsync = 1 and FakeVsyncInterval = 0 or 17

Unless your CPU is getting overloaded. What is your CPU?

Also, if you have "Windows Task Manager" running with the 'performance tab' visible you will be able to see your CPU usage. To bring up "Windows Task Manager" either right click on an empty area of the bar running across your screen with the 'start' button on it and click "Task Manager" on the pop-up box or hold down the [CTRL][ALT][DELETE] keys at some time ONCE ONLY.

It is easiest to play a game in a window and then position the 'Task Manager' window so you can see it while you are playing your game. Because once you [ALT][TAB] or switch away from your game the CPU usage will reduce as the game is now running in the background.

I am guessing that your games speed is not fast/slow/fast but /normal/slow/normal. But with more information or if someone can reproduce what you are experiencig then we can get to the bottom of it.

What does the FPS display show when you say it is going fast/slow/fast? If it is going slow because of CPU limitations then maybe we could try D3DWindower with Aqrit's ddraw.dll. Because I know a few tweaks to squeeze some more speed out of D3DWindower.

Reply 69 of 101, by jclampy

User metadata
Rank Newbie
Rank
Newbie

Please don't take offense by my response's, communities are about working together to solve problems. There is NO right or wrong answer and with so many variables in the realm of PC it is not uncommon for strange problems to arise. So please, don't be scared to give us some more information so we can help or Aqrit can make improvements.

If you were to upgrade from your Intel GMA 950 to something with OpenGL 2.0 support then you would be able to try things like DXGL and NGlide as well. NGlide would have the advantage with TS2000 because then you could use the TS2000 3DFX executable.

***There are other OLDER Glide wrappers out there that may work with your Intel GMA 950 but I have forgotten about them. Maybe someone else could respond about a suitable one or you may have better luck searching? Possibly try a DirectX7 or DirectX8 Direct3D based Glide wrapper.***

Honestly though, if your CPU is not getting maxed out then I see no reason why you should need to spend money upgrading to a video card for this purpose.

If you want to see if I can help please respond with;
What CPU and speed of CPU?
How much RAM do you have?
What game are you experiencing the problem with (is it TS2000 or other one)?
Please explain in detail what is happening, like; The FPS display goes from 60 to 40 or 20 and then back to 60 every couple of seconds. Or it keeps changing between 60 and 100.
Lastly please give details about what you are using (is it DXWind and Aqrit or just Aqrit, using FRAPS or other?, etc) and what settings you are using that are changed from defaults. (Aqrit's defaults all = 0) so you would have to list all modifications.

Please, don't give up because other's may have similar issue's and it is best to help if we can. Plus everyone can learn something, no one is born a computer genius.

Reply 71 of 101, by jclampy

User metadata
Rank Newbie
Rank
Newbie

What is your CPU model and speed? Can find by clicking 'start', control panel, system. Then on 'General' tab it should list under sub-heading 'computer'.

Using D3DWindower with Aqrit ddraw.dll it maybe possible to increase performance.

Also, what is your desktop resolution and refresh rate set at?
I assume you are playing using DXWind and Aqrit ddraw.dll?
What target FPS are the settings you are using aiming for?

I ask this because I have noticed with Raiden II if my destop was at 1280x960@60Hz and I have Raiden II in a window of as 1152x864 using DXWind and Aqrit ddraw.dll with settings aiming for 59-60FPS I can get 'screen tearing'. If my desktop was 1152x864@75Hz and Raiden II in a window of 1024x768 using DXWind and Aqrit ddraw.dll aiming for 59-60FPS I get NO 'screen tearing'.

It could just be Raiden II as it is looks like a relatively rushed console port. Or maybe the addition of using these wrappers at large resolutions was adding/causing lag. 'Screen tearing' is an unwanted visual defect, the frame rate was stable 59-60FPS in both cases.

Last edited by jclampy on 2012-12-28, 12:38. Edited 2 times in total.

Reply 73 of 101, by jclampy

User metadata
Rank Newbie
Rank
Newbie

No, as I have said I can play a game at 60FPS with monitor at 75Hz refresh rate with no problems using Aqrit ddraw.dll regardless of VSync enabled or disabled. My framerate will be 60FPS and smooth with no 'screen tearing'. 😉

Ah, so you are running the game with your refresh rate at 85Hz.
If Game is running at 85FPS then it is being capped by VSync.

This is strange because Aqrit ddraw.dll from what I gather controls the framerate irrespective of VSync. In other words it controls the framerate internally using a completely different method.

When we use FakeVsync = 1 this should ativate Aqrit ddraw.dll framerate capping method. FakeVsyncInterval = 16 or 17 should cap the framerate to around 62-63FPS or 58-59FPS.

If it is not working like this then maybe something else is interfereing which is why I ask what exact programs/settings you are using.

Also if you set ShowFPS = 15 you will see the FPS display to confirm Aqrit ddraw.dll is activated and working.

When you say "It runs fine at 60Hz and is only way". That is still because you are still somehow only hooked/capped by VSync and 60Hz is giving you 60FPS. It is as if you are not being framerate capped by DXWind or Aqrit ddraw.dll which my first thought is that you have a setting or settings wrong in DXWind and or Aqrit ddraw.dll config. If you look at my recent testing results in previous posts you will see that if the game's ran too fast it was *before* I activated DXWind or Aqrit ddraw.dll

Reply 75 of 101, by jclampy

User metadata
Rank Newbie
Rank
Newbie

I just re-ran these tests to confirm.

Testing TS2000 (Total Soccer 2000) for cloudstr

WinXP32bit, ATI4670HD, P4EE 3.4Ghz
Using Fraps with "only update overlay once a second" ticked.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Using nothing else at all
Monitor 75Hz
Video Card VSync ON
Main Menu 30FPS (solid)
Playing Match 68FPS (average)

Using nothing else at all
Monitor 75Hz
Video Card VSync OFF
Main Menu 30FPS (solid)
Playing Match 68FPS (average)

Using only Aqrit ddraw.dll
FakeVsync = 1 and FakeVsyncInterval = 17 and ShowFPS = 15
Monitor 75Hz
Video Card VSync ON
Main Menu 30FPS (solid)
Playing Match 59-60FPS (average)

Using only DXWind
with DirectX1~6 and Primary Surface ticked windowed size 1024x768
Monitor 75Hz
Video Card VSync ON
Main Menu 30FPS (solid)
Playing Match 68FPS (average)
Noticed 'screen tearing'

Using DXWind and Aqrit ddraw.dll at same time
FakeVsync = 1 and FakeVsyncInterval = 17 and ShowFPS = 15
with DirectX1~6 and Primary Surface ticked windowed size 1024x768
Monitor 75Hz
Video Card VSync ON
Main Menu 30FPS (solid)
Playing Match 59-60FPS (average)
NO 'screen tearing'

You should be able to reproduce these same results on your computer.
As you can see, the two times I used Aqrit's ddraw.dll I capped the framerate to 59-60FPS.
Worth mentioning that DXWind by itself did not cap the framerate.

Are you sure Aqrit's ddraw.dll is activated?

I put my DXWind folder inside my TS2000 folder, ie: \TS2000\DXWind\
Aqrit's ddraw.dll + aqrit.cfg is in \TS2000\

Reply 77 of 101, by jclampy

User metadata
Rank Newbie
Rank
Newbie
cloudstr wrote:

Beat me! A 8 years old D3DWindower most solid and pleasing than hundreds versions of Dxwnd, combined with aqrit form the perfect duo. I'm happy 😀

I'm sorry is hard to follow your english. Are you saying you have got D3DWindower and Aqrit ddraw.dll working together?

D3DWindower has alot more settings and is more complicated to get working. If you have it working then well done, but if you do notice any issues come let us know.

Maybe your DXWind got corrupted and a fresh copy may have solved it. I was using DXWind v2.01.99

Reply 79 of 101, by jclampy

User metadata
Rank Newbie
Rank
Newbie
cloudstr wrote:

Year i mean D3DWindower is a 8 years old wrapper (2004) and it run better than dxwnd. No more lag/choopy and a game sync very well with my refresh rate. It enough for me.

Tell me what settings you are using and I will test it as well. Are you using it with Aqrit ddraw.dll?

cloudstr wrote:

I found a way to translate complete D3DWindower from Japan to English language. I need your help because my Pc not display well Japan font

Sorry if I don't quite understand? There is already an english version released, search for D3DWindower english and should be able to find websites with it.