• No results found

The Direct& ta"#

In document Dxwnd Manual (Page 45-55)

DirectP Oersion ,ook )ets the basic intervention strateg#( depending on the game

technolog#% a different hooking techni/ue should be adopted. utomatic tries to find it b# itself% but it doesnt alwa#s succeed pen;1 handling re/uire a dedicated setting *see libs tab+

Gmulation Defines the basic surface emulation strateg#( either R 'oneR *the program controls the desktop color depth+% R (rimary )uerR *same as

none% but blit operations are made against a memor# surface and then transferred to the real primar# surface S this handles the otherwise known pich5bug problem+ or R(rimary SuraceR *the virtual primar# has a different color depth of the real primar#% and DxWnd takes care of the color transformation internall#( slower but no screen mode

changes+.

'he R Automatic modeR uses a ver# simple strateg# for Direct3D games(

it tries the R(rimary SuraceR mode first and% if that doesnt

succeed% switches to R%ocked suraceR. "t is the best strateg# " came across% but it doesnt alwa#s work

uto primar# surface refresh

)ome badl# programmed games *namel# the R4ossaksR series+ dont follow the specification to blit changes on screen% the# $ust get the primar#

surface memor# address and keep writing there. 'he option forces a periodic blitting of the primar# surface on screen even if the game doesnt re/uest it. 9ou want a second example& "t has not been eas# to find% but R4rush DeluxeR suffers the same problem.

O"DG N )9)'GM )urface on fail

When this option is set and a 4reate)urface fails because of video memor# shortage% DxWnd backs this up b# creating the surface on

memor#. ddl# enough% some games expect to notice this b# themselves and work correctl# onl# when the option is ' set.

)uppress DP common errors )ome games running in windowed mode generate sporadic errors that wouldnt prevent the game to work% but terminate the application. 'his option makes directx methods return  condition in such common cases.

Make Eackbuf attachable lters the siAe specification of the created backbuffer so that it copes with the actual primar# surface% so that it ma# be attachable to a TE=--G: surface. "t makes CDave Mirra -reest#le EMP pla#able.

Elit from Eackbuffer )ome games *the )ims% the onl# one so far....+ read graphic data from the primar# surface. When the game runs windowed% the approximation introduced in a scaled window brings cumulative error that appear as a progressive RsmearingR effect. "n this case% it might be better to read the data from the backbuffer surface that is not scaled% even if in such a wa# #ou get other troubles when scrolling *see it b#

#ourself...+. 'he onl# reasonable alternative( write game code in a better wa#% in m# opinion

4ompensate -lip emulation

)uppress clipping DxWnd sets clipping on the primar# surface. "f the game does it as wa#% there might be interferences. s a matter of fact% setting this flag is the onl# wa# to make R!ax "mperia Gminent DomainR working correctl#.

-ull :G4' blit 4auses ever# blit operation to primar# surface to be applied to the full surface *=11 rect coordinates+. "t could be hand# to recover wrong surface handling% but this situation should be classifies more properl# as a DxWnd E=;

!alette update dont blit void executing a plit operation in case of palette update. 'his could be used to fix conflicts between ;D" and ddraw palette updates

)et G: compatible mode Vuite useful in Windows Oista to Win8 platforms% forces the program to declare its compatibilit# with G: desktop mode% avoiding then the switch from G: to standard desktop mode.

-orces ,G1 -orces ,ardware Gmulation 1a#er WinF color fix

Dont fix the !ixel -ormat Do not tr# to fix the surface pixel format E# default set no

1!,4,G1

-ix ddraw ref counter Decrement the reference counter of some ob$ects to keep in proper account all service ob$ects created internall# b# DxWnd

:eturn 0 ref counter :eturns alwa#s a 0 reference counter when a surface @ directdraw session is released

)uppress D3D8@6 reset Do not perform the D3D reset operation

the %i"s ta"#

;D"

o ;D" handling Disables video5related ;D" @ user32 !" hooking

)caled ;D" calls )cales ;D" !" coordinates to fit the window stretching Gmulated Device 4ontext ,andle an emulated ;D" D4

Map D4 to !rimar# )urface =se the ddraw primar# surface D4 for ;D" operations

)cale font parameters 'ries to scale font parameters to fit the window stretching

;lide *3D-P+

,ook ;lide libs Gnables ;lide !" hooking

pen;1

,ook pen;1 Gnables pen;1 !" hooking

-orce ,ook Gxperimental S probabl# unnecessar#

4ustom pen;1 librar# E# default% DxWnd detects pen;1 !"s within the standard pen;132.dll librar#. 'he field allow to set a different filename for an# custom

pen;1 implementation that ma# refer to a different librar# name.

the *omapti"ility ta"#

-ake Oersion 4auses the program to detect the chosen Windows release. otice( this is not the same thing as the compatibilit# setting of the Windows properties panel% that also ad$ust the s#stems behaviour to emulate the chosen platform.

'weaks

)uppress d3d6 extensions D3d6.dll comes in different versions depending on the platform( on older windows releases it exports the Direct3D4reate !"% while in more recent versions there are man# further exported calls. 'he flag suppresses the additional entries.

'extures not power of 2 fix 4lean TE=--G: X0.0 fix 4lean TE=--G: X.0 fix E#pass font unsupported api )et single core process affinit#

)uppress d3d6 extensions

)uppress "MG 'he flag tries to suppress "MG windows% though that is not full#

working #et

,andle exceptions )etting this flag causes DxWnd to set its own exception handler that tries *and often succeds+ to fix sevral common exceptions such as the divide b# Aero exception of old games that were tr#ing to calculate the 4!= speed.

1imit available resources Makes the /uer# for available resources *either :M% hard disk free space and so on+ to return a limited value( some old games cant handle a ver# big integer number and see it as a negative value%

refusing to start.

:egistr#

Gmulate registr# "ntercepts registr# read operations so that missing entries are replaced b# the values in DxWnd.reg file

verride registr# "ntercepts registr# read operations so that missing and exixting entries are replaced b# the values in DxWnd.reg file

"@ 'weaks

-ix buffered "@ after Win8 )et 4D:M Drive '#pe

,ide empt# 4D:M drives

3D Gffects

Disable 'extures :emap all textures with a white texture *D3D onl#+.

3D wireframe s a fanc# and eas# action that DxWnd ma# implement on D3D and pen;1 programs *not ddraw ones+% checking this flag will show the graphic in wireframe mode.

Disable -ogging Disables the fogging effect *D3D onl#+.

In document Dxwnd Manual (Page 45-55)

Related documents