Where are the patches ?

Developer's Forum, for discussion of bugs, code, and other developmental aspects of DOSBox.

Where are the patches ?

Postby Virusek » 2010-7-21 @ 11:14

I want to build experimental SVN version of dosbox, but cannot find patches like PhysFS etc. and some of patches seems to be quite old like Direct3d and glide, seem a 0.73 build with them is newer.
Can anyone send me newest possible versions ?
Virusek
Newbie
 
Posts: 9
Joined: 2010-7-21 @ 11:06

Re: Where are the patches ?

Postby wd » 2010-7-21 @ 11:43

There may or may not be updated versions of the patches since it's up to
the patch authors to care for that or not. Grab the latest stuff you find from
the sourceforge page or the patches forum on vogons.
wd
DOSBox Author
 
Posts: 10818
Joined: 2003-12-03 @ 21:23

Re: Where are the patches ?

Postby Virusek » 2010-7-21 @ 13:44

I can't find a patch to SDL that allows SDL_VideoDriver=directx with direct3d and glide. My build on fullscreen shows black screen, on console there are errors "D3D:Device Lost" ... Setting SDL_VideoDriver=windib fix this, but seems there is a SDL patch to this fix this error.
Also I create reverse diff from gulikoza's newest build source and dosbox 0.73 but there are many rejects if applied to SVN sources ... Now fixing it manually ...
Virusek
Newbie
 
Posts: 9
Joined: 2010-7-21 @ 11:06

Re: Where are the patches ?

Postby Qbix » 2010-7-21 @ 14:16

checked the dosbox-0.74/src/platform/sdl-win32.diff file ?
Water flows down the stream
How to ask questions the smart way!
User avatar
Qbix
DOSBox Author
 
Posts: 10594
Joined: 2002-11-27 @ 14:50
Location: Fryslan

Re: Where are the patches ?

Postby Virusek » 2010-7-21 @ 14:19

Yeah, this only fix SDL_dx5video.c, but this does not fix it. Also I found OpenGL-HQ patch but have problem to apply it because is writhed for mingw but I using vs2010 ...
Virusek
Newbie
 
Posts: 9
Joined: 2010-7-21 @ 11:06

Re: Where are the patches ?

Postby wd » 2010-7-21 @ 15:57

Yeah, nobody said coding is easy.

The patch Qbix linked to is against SDL, just in case somebody wondered.
Should apply to one of the non-latest of their release which has a nice
different set of new problems.
wd
DOSBox Author
 
Posts: 10818
Joined: 2003-12-03 @ 21:23

Re: Where are the patches ?

Postby Virusek » 2010-7-21 @ 19:51

Yes, I applied it but it do not fix black screen on fullscreen switch when directx is used. I'm using latest hg clone of SDL 1.2 branch.

This patch is only one ? Maybe versions 1.2.14 and newer are broken ?
Virusek
Newbie
 
Posts: 9
Joined: 2010-7-21 @ 11:06

Re: Where are the patches ?

Postby wd » 2010-7-21 @ 20:18

1.2.13 was used for the release iirc.
Please assure that plain 0.74 plus such a DLL works correctly.
wd
DOSBox Author
 
Posts: 10818
Joined: 2003-12-03 @ 21:23

Re: Where are the patches ?

Postby Qbix » 2010-7-21 @ 20:57

yeps. 1.2.14 and the latest source at the time of creating the release of dosbox had a lot of problems at some of the testers computers.
Water flows down the stream
How to ask questions the smart way!
User avatar
Qbix
DOSBox Author
 
Posts: 10594
Joined: 2002-11-27 @ 14:50
Location: Fryslan

Re: Where are the patches ?

Postby gulikoza » 2010-7-22 @ 11:12

Virusek wrote:Setting SDL_VideoDriver=windib fix this, but seems there is a SDL patch to this fix this error.


Basically what I did in my SDL build is force windib when d3d is used. There's no advantage of using directx when D3D is used since it handles the drawing by itself and ddraw surface just gets in the way...

Virusek wrote:Also I create reverse diff from gulikoza's newest build source and dosbox 0.73 but there are many rejects if applied to SVN sources ... Now fixing it manually ...


Yeah...I'm thinking the same thing :wink: Might get around to actually fixing it one of these days :happy:
User avatar
gulikoza
Oldbie
 
Posts: 1704
Joined: 2004-6-25 @ 14:53

Re: Where are the patches ?

Postby Virusek » 2010-7-23 @ 13:00

Basically what I did in my SDL build is force windib when d3d is used. There's no advantage of using directx when D3D is used since it handles the drawing by itself and ddraw surface just gets in the way...


So this can be done in dosbox ?

In sdlmain.cpp:

Code: Select all
SDL_QuitSubSystem(SDL_INIT_VIDEO);
putenv("SDL_VIDEODRIVER=windib");
SDL_InitSubSystem(SDL_INIT_VIDEO);


before:

Code: Select all
sdl.desktop.want_type=SCREEN_DIRECT3D;


Yeah...I'm thinking the same thing Might get around to actually fixing it one of these days


No that was not good idea, better was diff from rev 0.73 to rev 0.74 and apply it to your source - less rejects, and most reject was already patched (seems you CVS source is pre-0.74). I have now a working copy of 0.74 with all you changes. I will post it after some tests.

Do you have OpenGL-HQ patch for SDL that builds on Visual Studio ?
Because for best stability will be not mix different C/C++ runtimes.
Virusek
Newbie
 
Posts: 9
Joined: 2010-7-21 @ 11:06

Re: Where are the patches ?

Postby gulikoza » 2010-7-23 @ 13:54

My checkout was from July, a little over 1 month after the 0.73 release. When doing a new release, I usually go over all the patches and fix little things so the 0.73 -> 0.74 is not my way but I guess it can be done as well :)

So this can be done in dosbox ?


I guess it can, but I like my SDL solution better since only the window handling is switched to GDI (actually the same codepath as OpenGL, just without the OpenGL context)...input subsystem then still uses the directx codepath. Using SDL_VIDEODRIVER=windib also uses different input codepath that used to be problematic at some time with dosbox :)

Do you have OpenGL-HQ patch for SDL that builds on Visual Studio ?


No, but I believe the code should be buildable with VS. What is probably missing is the header generation...you should use mingw, compile, make sure asciidump.exe and hexdump.exe are built and all those SDL_openglhq_pass*.h headers generated. Then simply add these generated headers to the solution and build with VS. Or if you have time, add asciidump and hexdump building as a prerequisite in the solution and make sure they generate the headers before SDL is built.
User avatar
gulikoza
Oldbie
 
Posts: 1704
Joined: 2004-6-25 @ 14:53

Re: Where are the patches ?

Postby Virusek » 2010-7-23 @ 14:35

So if SDL way is better, please tell me what to patch in SDL (maybe some diff ?)

EDIT: ok, after few days of searching for patches (thx gulikoza), compiling, and fixing errors, there is my build of dosbox.
I named it UBER BUILD because my main goal is to implement all patches in one build.

Code: Select all
DOSBox svn r3623 UBER BUILD v1

WARNING: This is EXPERIMENTAL build, use at your own risk !!!
WARNING: This build will NOT work without SSE2 support !!!

System Requirements:
   CPU with SSE2 support
   DirectX Redist 43 (June 2010) from:
      http://www.microsoft.com/downloads/details.aspx?FamilyID=3b170b25-abab-4bc3-ae91-50ceb6d8fa8d&displaylang=en
   Visual Studio 2010 Redist(x86) from:
      http://www.microsoft.com/downloads/details.aspx?FamilyID=a7b7a05e-6de6-4d3a-a423-37bf0912db84&displaylang=en

Included Patches:
   All patches from gulikoza's build:
      coreswitch, direct3d, glide, mt32, openglhq, physfs, NE2000, printer and oplpassthrough
   Updated Glide patch by gulikoza to 24.11.2009
   SDL_sound support
   Some other small fixes (mostly VS2010 compatibility fixes)
   
Used libraries:
   DirectX SDK 43 (June 2010)
   OpenGlide 0.09rc9
   Glide Router (glide2x.ovl) by gulikoza
   SDL 1.2 hg r4567 with patches [directx fix and OpenGL-HQ]
   SDL_net 1.2.7
   FreeType 2.4.1
   zlib 1.2.5
   libpng 1.4.3
   physfs 2.1.0 hg r1089
   WinPCAP 4.1.2 (only headers)
   SDL_sound 1.0.3 with compiled in:
      libogg 1.2.0
      libvorbis 1.3.1
      libflac 1.2.1
      smpeg svn r389

Build enviroment:
   Microsoft Visual Studio 2010
   MSYS with MINGW TDM-GCC 4.5.0
   OPEN WATCOM 1.9
   
Notes:
   D3DXSHADER_ENABLE_BACKWARDS_COMPATIBILITY flag is pass to
      ID3DXEffectCompiler::CompileEffect fuction for ps 1.x support
   Only SDL 1.2 library is build using MINGW (because OpenGL-HQ patch is not compatibile with VS).

   Compiler options are:
      For MSCL: /Ox /Ob2 /Oi /Ot /Oy /GT /GL /GF /MD /arch:SSE2 /fp:fast
      For MINGW -Os -pipe -march=i686 -msse2 -lto
Attachments
dosbox.r3623+uber1.7z
DOSBox svn r3623 UBER BUILD v1
(1.57 MiB) Downloaded 1973 times
dosbox.r3623+uber1-src.7z
DOSBox svn r3623 UBER BUILD v1 [sources]
(920.97 KiB) Downloaded 883 times
Virusek
Newbie
 
Posts: 9
Joined: 2010-7-21 @ 11:06

Re: Where are the patches ?

Postby DougQuaid » 2010-7-28 @ 08:47

thanks for your build, but I have some performance issues when running with direct3d output. I get average 66fps in quake1 benchmark and there are visible slowdowns during benchmark run, when using opengl output the benchmark gives 124fps (tested on different computers with nvidia/ati card)
with old gulikoza build with direct3d the result is 112fps
User avatar
DougQuaid
Newbie
 
Posts: 1
Joined: 2010-5-15 @ 08:41

Re: Where are the patches ?

Postby Virusek » 2010-7-28 @ 20:52

I enabled vsync as default, force off it in you graphic card settings. I really hate tearing ...
Virusek
Newbie
 
Posts: 9
Joined: 2010-7-21 @ 11:06

Re: Where are the patches ?

Postby Targaff » 2010-8-03 @ 06:29

Is the SSE2 requirement builder's preference or genuinely required for one or more patches? Just curious.
Intel CC820 | PIII 667 | 2x128MB SDRAM | 3Dfx Voodoo 5 5500 @ Dell P790 | Creative SB PCI128 | Fujitsu MPC3064AT 6GB + QUANTUM FIREBALLlct10 10 GB | SAMSUNG DVD-ROM SD-608 | IOMEGA ZIP 100 | Realtek RTL8139C | Agere Win Modem
User avatar
Targaff
Member
 
Posts: 244
Joined: 2002-11-19 @ 17:40

Re: Where are the patches ?

Postby SwissCM » 2010-8-09 @ 02:59

It appears that glide is broken. The latest gulikoza build works however yours either crashes completely whenever glide is activated, or when running dgvoodoo it flashes "glidedll out of memory" for a split second and games don't detect it.
User avatar
SwissCM
Newbie
 
Posts: 3
Joined: 2009-9-20 @ 03:01

Re: Where are the patches ?

Postby Virusek » 2010-8-21 @ 15:49

SwissCM wrote:It appears that glide is broken. The latest gulikoza build works however yours either crashes completely whenever glide is activated, or when running dgvoodoo it flashes "glidedll out of memory" for a split second and games don't detect it.


Yeah, dgvoodoo seems crash with latests glide patch, but openglide and nGlide works fine in TR1/UB for me.
Note you MUST use glide2x.ovl included in this release, other one will crash (any change to glide definitions in glide patch == changes to glide2x.ovl, and older will crash because will not find correct definitions).

gulikoza build uses older glide patch, I used newest I found in here.
Virusek
Newbie
 
Posts: 9
Joined: 2010-7-21 @ 11:06

Re: Where are the patches ?

Postby Miki Maus » 2010-8-21 @ 16:47

Dege said he was thinking about releasing source code for dgVoodoo if there was enough interest. What happened with that?
User avatar
Miki Maus
Member
 
Posts: 197
Joined: 2004-10-18 @ 22:19
Location: Cave


Return to DOSBox Development

Who is online

Users browsing this forum: No registered users and 0 guests