My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Here you can discuss the development of patches.

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby Diduz » 2017-11-25 @ 14:35

Great work, Marty2Dos! This build could become my favorite Dosbox port. :happy: CGA extended support is welcome, and Tandy is working again (Tandy was malfunctioning on the last Dosbox Daum).
Just two minor issues: "openglnb" and "vgaonly" are not compatible. With these settings, any shader is deactivated, and the resulting image is just a tiny window in a sea of black. "Vgaonly" works well with "texturenb" and other renderers, though.
I also noticed an annoying issue with "CRT-Lottes" and "CRT-Lottes_mod", my favorite shaders. For some reason, the screen is corrupted and strangely "stretched" on the upper and left side, if you choose to apply a minimum barrel distortion on "warp" parameters. Check the screen in the attached file.
Anyway, thank you for your work. :happy:
You do not have the required permissions to view the files attached to this post.
Diduz
Newbie
 
Posts: 32
Joined: 2003-4-23 @ 15:39

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby Marty2dos » 2017-11-27 @ 15:59

Hey, thanks :) :blush:

Yes, i know the problem with "openglnb" and "vgaonly". In the code it jumps automatic to the surface method if the screen in Dosbox is not 256 Color mode, under Windows 3.1 with 32k oder 64k/16bit same result. There was a goto command in the source.

Code: Select all
if (!(flags & GFX_CAN_32) || (flags & GFX_RGBONLY))
   goto dosurface; // BGRA otherwise


I dont know why? I have this excluded. Now all the Resolution Modes and Maschine Settings use OpenGL3 and the shader stuff works. .. fullscreen too
With EGA or VGAOnly (M_TEXT) there was a Screen Garbage/Melt error if aspect is true. The window was very.. very stretched to 720 in the height. The width was 570 or the screen was very compressed / crushed. With aspect=false no Problem, all ok. I have this 'Temporay' eliminated with (missings?) aspect_ratios in the vga_draw.cpp.

I tested this with various Games and different maschine settings (Sierra AGI/ Hard Drive 2/ 3DFX/ Windows 3.1 resolution Modes etc... ). All works.
I taken a few Game/Scene Demo relevants fixes. Credits and thanks go the Dosbox-X Authors. Warcraft 2 and the scene demos are now working in this Dosbox Build too. the conf has a new command 'CutVesaResolutionIndex'

Added - you can set your favorite color for cga_mono and hercules in conf as default.

I've looked, because the shader and stretch thing. On the Laptop on my Parents. My Mother (66) is a long fan from the Astronomy Programm PcCosmos. No Problem with the Screen Stretch. All look normal with the schaders. On my Maschine. It is darkened over the arch/bend and not completely black. It is very dimmed. We use the same Config. I think this is a opengl thing.

As Default. I Using a Windows Resolution 1280x1024 with 'crt lottes mod' (look screens). With the other Stretch Problem? Perhaps Dugan or the original author from the shader stuff can still give advice. They can look in the source on my Github Account.I am not very experienced with opengl programming. I try best but i do not want to change too much. Suddenly something does not work. anymore. I use only MingW and Notepad++. :blush: :dead:

Countdown Demo use 1280x1024 (With vesa_nolfb) (On Default S3, it exists with no memory), Kukoo2 on VGaOnly and Hard Drive 2 on EGA (Look at the screen, all with Aspect = true)



I update this Buld and the source on Github this evening (German Time). Note: you need a new conf to look the changes.
greetings Marty
You do not have the required permissions to view the files attached to this post.
Marty2dos
Newbie
 
Posts: 32
Joined: 2013-6-04 @ 01:43

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby Diduz » 2017-11-27 @ 22:49

Marty2dos wrote:I update this Buld and the source on Github this evening (German Time).

:-D
Ok, I've just tried the new build (27/11). Now "vgaonly" works fullscreen with "openglnb", but I get a garbled screen if I leave the "aspect=true" on. See the attached screen. If I set the "aspect" to "false" I don't get the "garbling" but I get a widescreen stretched image, obviously. :dead:
You do not have the required permissions to view the files attached to this post.
Diduz
Newbie
 
Posts: 32
Joined: 2003-4-23 @ 15:39

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby Marty2dos » 2017-11-28 @ 03:02

Damned... :depressed: Thanks :happy: for the Info. I use only svga_s3. Only if exists compatibility Problems with VGA Games, then i try and use vgaonly.

Ok i think that is now fixed.
DOSBox 0.74 r4063 (Optionals v06) Build on (Nov 28 2017 090008)
You do not have the required permissions to view the files attached to this post.
Marty2dos
Newbie
 
Posts: 32
Joined: 2013-6-04 @ 01:43

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby Diduz » 2017-11-28 @ 22:31

Marty2dos wrote:Ok i think that is now fixed.

It is, for 320x200 games. There are some problems left with strange resolution games such as Sleepwalker (320x168) and Jazz Jack Rabbit (320x199), which still go garbled with "vgaonly" and "aspect=true".
That's not a priority, anyway. You've already done a ton. :happy: And they still work with "aspect=false" or "svga_s3", so no big deal.
I think the strange stretch problem you saw in the Prince of Persia screenshot is more important right now. Maybe Duncan could help? ;-)
Diduz
Newbie
 
Posts: 32
Joined: 2003-4-23 @ 15:39

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby Diduz » 2017-11-29 @ 17:01

The "stretch" problem with crt-Lottes seems to be related either to GeForce OpenGL Drivers or resolution.
I've just tried the last build on my laptop (1366x768 resolution, AMD Radeon card and drivers) and there's no stretch at all, the shader works like a charm (of course shadow masks look a bit bad within that resolution). I wonder what's going on. :dead:
Diduz
Newbie
 
Posts: 32
Joined: 2003-4-23 @ 15:39

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby Marty2dos » 2017-11-30 @ 11:33

Thanks for the info. I know Sleepwalker from Amiga or SNES. I did not know Jazz Rabbit. Because that's not really good with the resolution, I took care of it anyway. Now it works.
We have to look with the shader. I think it's a driver thing. With my parents on the laptop with Intel GFX that looks perfect too.

DOSBox SVN r4063 (Optionals) Build on (Nov 30 2017 02:00:59)
You do not have the required permissions to view the files attached to this post.
Marty2dos
Newbie
 
Posts: 32
Joined: 2013-6-04 @ 01:43

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby Diduz » 2017-11-30 @ 22:22

Marty2dos wrote:Now it works.

Confirmed! :happy:
Now I must understand what's wrong with Nvidia OpenGl drivers and that strange "stretch".
Diduz
Newbie
 
Posts: 32
Joined: 2003-4-23 @ 15:39

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby Marty2dos » 2017-12-01 @ 02:44

Thats good:)

Now the Shader!
I think I got it with the shader. I looked a half day in the glsl sandbox website through the shader codes. My idea/solution was to create a black border with the curve and position automatic from the image with the size/resolution.
You do not have the required permissions to view the files attached to this post.
Marty2dos
Newbie
 
Posts: 32
Joined: 2013-6-04 @ 01:43

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby Diduz » 2017-12-03 @ 19:31

Nope, I don't get the mask with "Blackmask 1", I don't know why. :-(
Anyway, stretch is gone, but I get the annoying effect in your first screenshot.

P.S.: Why did you set the "shape" value to 3.0 instead of 2.0?
Diduz
Newbie
 
Posts: 32
Joined: 2003-4-23 @ 15:39

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby Marty2dos » 2017-12-03 @ 22:12

Och.. damned. Have you tried setting down the brightboost or maskLight.
This is very strange and now i can't this error checking because it's look on my sys how the last 2 screens in my last post. I'm sorry that I can not help you with that. :(
The shape... this ... nothing important. It's now default 2.0 in the updated Archiv r4064.
Marty2dos
Newbie
 
Posts: 32
Joined: 2013-6-04 @ 01:43

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby Diduz » 2017-12-05 @ 22:59

Marty2dos wrote:I'm sorry that I can not help you with that. :(

I've just discovered the Blackmask doesn't work with "crt-Lottes_mod", but it DOES work with the plain "crt-Lottes"! :happy: Hmmmm...

EDIT: I forgot the "fullscreen=true" in the config file never works. DosBox starts windowed no matter what. I can still go fullscreen by ALT+ENTER, btw.
Diduz
Newbie
 
Posts: 32
Joined: 2003-4-23 @ 15:39

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby pintglass » 2017-12-07 @ 21:14

Could you add glide support to your build?
pintglass
Newbie
 
Posts: 3
Joined: 2017-12-02 @ 19:43

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby Great Dragon » 2017-12-09 @ 21:41

It looks awesome!
And works good as well.

Kyrandia doesn't have that stupid bug when only half of the screen is shown.
Image

Although I can't make Blackthorn to run. It stuck on Sound driver loading step. No matter which SB type I chose.

Marty2dos
Can you convert CRT Geom shader for your build please? As it's the one which was converted for Daum build as CRT.D3D. And it looks to me more closer to what I remember CRT monitor should look like.
https://github.com/libretro/common-shad ... rt-geom.cg

Also crt-easymode doesn't work for me :(
User avatar
Great Dragon
Newbie
 
Posts: 31
Joined: 2016-6-16 @ 23:58

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby Marty2dos » 2017-12-10 @ 04:40

Great Dragon wrote:It looks awesome!
And works good as well.

Kyrandia doesn't have that stupid bug when only half of the screen is shown.
Image

Although I can't make Blackthorn to run. It stuck on Sound driver loading step. No matter which SB type I chose.

I choosed for Digisound SB Pro and for Music Ultramidi .. result worked :)

Great Dragon wrote:Marty2dos
Can you convert CRT Geom shader for your build please? As it's the one which was converted for Daum build as CRT.D3D. And it looks to me more closer to what I remember CRT monitor should look like.
https://github.com/libretro/common-shad ... rt-geom.cg

Also crt-easymode doesn't work for me :(

I look and try it:)


pintglass wrote:Could you add glide support to your build?


There is a 3DFX Voodoo 'Card' (Source Convertet from Kecko, Daum/ECE SDL1 version to SDL2)
Here Windows 95C build 1212 (No Errors becausei installed it on the VMware and copy the image content to a Dosbox HD Image, for this i added imgmake from the Megabuild )/ After decades, Enemy Zero is finally running with Hardware Acceleration. It has not worked since XP. ..for me ;)

greetings Marty
You do not have the required permissions to view the files attached to this post.
Marty2dos
Newbie
 
Posts: 32
Joined: 2013-6-04 @ 01:43

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby Great Dragon » 2017-12-10 @ 08:51

Marty2dos wrote:I choosed for Digisound SB Pro and for Music Ultramidi .. result worked

I had to set 'sbtype=sbpro2' and 'cycles=20000' in config. Otherwise it doesn't work.

Image
User avatar
Great Dragon
Newbie
 
Posts: 31
Joined: 2016-6-16 @ 23:58

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby Marty2dos » 2017-12-10 @ 19:35

Is this a free Official version from Blizzard? I use a older Disk Edition?

I have the Fork updated:
06.12
- Added and Update Dosbox Optionals to svn r4065
SVN Release: Fix bug where joysticks got disabled after a section restart (when changing parameters while running).
Add code to map circularly restricted analogue input to be mapped to squares.
Add deadzone support in both square and circular mode.
Add deadzone=100 as fake digital device (idea by Hidden Asbestos)

- Added GETDIG.COM Program (Similar Choice but only with Digits Only)
- Added Maschinentype/GFX Card to the Window Title

10.12
- Added in the conf [SDL]. 'VoodooUseOwnFullScRes' and 'VoodooUseOwnWindowRes'.
On true the Voodoo 3DFX resolution is taken from the configuration settings
windowresolution/ fullresolution. Set to false so you can change in the section
pci a own Resolution or if you run with a game in problems and higher Resolution
you can change this and use the Original Resolution.

- Added in the conf [SDL] 'VoodooDesktopFullScrn'. With this bool is controlled
whether the 3DFX Fullscreen 'native' is or as 'Fullscreen Desktop' traded (SDL2).
For 3DFX games that have no problem with it (High Resolutions), such as Tomb Raider,
Fatal Racing aka Screamer, D1 Enemy Zero (Windows 95 with Voodoo driver) is
recommended to set the value to true. For games like Pyl, Blood etc .. put the value
on false.

- Added in the conf [SDL] WindowsTaskbarAdjust. With the switch you can adjust the fine
tuning for the centering of the window in the height if the window 'still' hangs a few
pixels under the Windows taskbar.

- Update to SVN Code 4066
SVN Reease: Allow an autoinit transfer to go over into a single cycle transfer.
Fixes Paddlers.

- Added imgmake Patch. From HAL's Old Megabuild Version. Create HD images.
- Dosbox Window Title show the Maschine/GFXCard.
- Reworked the Template for the Autoexec
- HD Nibblefix from Dobsox-X, NTS: DOSBox 0.74 mainline has these backwards: the upper
nibble is the first hard disk, the lower nibble is the second hard disk. It makes a big
difference to stupid OS's like Windows 95. Note from Marty: This fixed the Right Popupmenu
in Windows95 B/C.
- Windows Keys (Win Left and Right added to SDL Mapper)
- Reboot Message changed
- Doshell Dir switch. More help to the Sort Order Command
- Added in the conf [SDL] UseAspectHeight. If this true. Dosbox will be use Aspect Ratio
on the Screens (Aspect=true/false). if this set to false. Aspect Ratio has no 'heavy'
effect the screen hight's. I added this because my Resolution 1280x1024 was always shrink
to 1280x960. OK, this 640x480 *2. But it doesn't look good on Windows 3.x/ Windows 95.
I use a big full HD TV as Desktop Monitor.

NOTE: Fullscreen issues and todos.
I think you have already noticed. The whole thing with the fullscreen somehow not working
properly. I therefore advise you to avoid the fullscreen. Why?
- With the method Output = Surface, image remains black.
- With the method Output = Texture (nb), Fullscreen does not work in combination with a
specified fullscreen resolution. Result: graphic error
- With the method Output = OpenGL (nb), see above.
- 3DFX. It may happen that crashes with the method OpenGL (nb) and Native Fullscreen Dosbox.
- When you quit Dosbox in fullscreen mode. Keys entered or in the DosShell "exit". Dosbox
crashes. Remember if you change to Fullscreen -> don't forget to go n the windows Screen


I know. These are important things that need to be done for other things but my Coding Skill ist not yet enough and is it a private release.
Windows95 in Dosbox: (Don't forget, Windows9x in Dosbox is not official supportet)
- Shutting down does not always work. (Win95C Buld 1212)
- The MsDOS Shell and with a screen of BPP 32Bit doesn't work
Marty2dos
Newbie
 
Posts: 32
Joined: 2013-6-04 @ 01:43

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby Great Dragon » 2017-12-11 @ 09:19

Marty2dos wrote:Is this a free Official version from Blizzard? I use a older Disk Edition?

I've checked with both official and the one I got from http://www.bestoldgames.net/eng/

In both cases you have to set fixed cycles value or use some profile like "i386dx_40".
Even official version has 'cycles=fixed 13000' in its dosbox config.

But both of them work with either 'sbtype=sbpro2' or 'sbtype=sb16'. So it's only cpu cycles what's matter to make the game run.
User avatar
Great Dragon
Newbie
 
Posts: 31
Joined: 2016-6-16 @ 23:58

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby Great Dragon » 2017-12-11 @ 19:48

Marty2dos
Here is an OpenGL port of CRT-geom shader we've talked earlier (called CRT-interlaced). But unfortunately it doesn't work with your build :(
viewtopic.php?f=41&t=36342&start=20#p319636
User avatar
Great Dragon
Newbie
 
Posts: 31
Joined: 2016-6-16 @ 23:58

Re: My DosBox fork. OpenGL 3 GLSL shaders, FluidSynth (SDL2)

Postby pintglass » 2017-12-12 @ 23:00

There is a 3DFX Voodoo 'Card' (Source Convertet from Kecko, Daum/ECE SDL1 version to SDL2)
Here Windows 95C build 1212 (No Errors becausei installed it on the VMware and copy the image content to a Dosbox HD Image, for this i added imgmake from the Megabuild )/ After decades, Enemy Zero is finally running with Hardware Acceleration. It has not worked since XP. ..for me ;)

greetings Marty


Is your build for windows or linux?
pintglass
Newbie
 
Posts: 3
Joined: 2017-12-02 @ 19:43

PreviousNext

Return to DOSBox Patches

Who is online

Users browsing this forum: gdjacobs and 1 guest