DOSBox ECE (for Windows & Linux)

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

Re: DOSBox ECE (for Windows & Linux)

Postby Yesterplay80 » 2019-3-05 @ 18:32

Qbix wrote:Try the non-patched build.
You might have discovered the reason for those limits to exist in the mapper.

I think the axis limit isn't the problem here, it's rather that DOSBox is trying to adress non existent hardware if you map but unplug the second controller.

Vanilla SVN behaves the same, btw. Mapping the second controller and not having it plugged in crashes the unpatched build as well. I tried it with two Logitech F710 in Xinput mode.
UPDATE: Official DOSBox 0.74.-2 crashes, too. So definitely not a problem caused by the patch.
My full-featured DOSBox SVN builds (without debugger) for Windows: Vanilla DOSBox and DOSBox ECE (Enhanced Community Edition)
User avatar
Yesterplay80
Member
 
Posts: 403
Joined: 2016-2-23 @ 11:02
Location: Germany

Re: DOSBox ECE (for Windows & Linux)

Postby Qbix » 2019-3-05 @ 18:56

Okay, good to have checked. I only have one controller though :(
Water flows down the stream
How to ask questions the smart way!
User avatar
Qbix
DOSBox Author
 
Posts: 10838
Joined: 2002-11-27 @ 14:50
Location: Fryslan

Re: DOSBox ECE (for Windows & Linux)

Postby awgamer » 2019-3-05 @ 19:57

What? You haven't bought a second $5 usb controller with all that DOSBox money? :happy:
awgamer
Oldbie
 
Posts: 568
Joined: 2014-7-26 @ 07:42

Re: DOSBox ECE (for Windows & Linux)

Postby Qbix » 2019-3-05 @ 19:59

It would be a bit of a waste.. i hardly use the one controller that I already have... But it is indeed a possibility to find a cheap second one :)
Water flows down the stream
How to ask questions the smart way!
User avatar
Qbix
DOSBox Author
 
Posts: 10838
Joined: 2002-11-27 @ 14:50
Location: Fryslan

Re: DOSBox ECE (for Windows & Linux)

Postby spammenon » 2019-3-06 @ 20:48

Qbix wrote:Try the non-patched build.
You might have discovered the reason for those limits to exist in the mapper.

I did think the patch could cause some trouble, but I'm continuing to use it so at least player 1 can use the D-Pad.
Yesterplay80 wrote:I think the axis limit isn't the problem here, it's rather that DOSBox is trying to adress non existent hardware if you map but unplug the second controller.

Vanilla SVN behaves the same, btw. Mapping the second controller and not having it plugged in crashes the unpatched build as well. I tried it with two Logitech F710 in Xinput mode.
UPDATE: Official DOSBox 0.74.-2 crashes, too. So definitely not a problem caused by the patch.

In my experience, the crashes seem isolated to a 2nd gamepad's d-pad remaining mapped when disconnected (on starting DOSBox ECE) and nothing else. The other buttons and axes being mapped is fine and does not cause crashes. With Vanilla DOSBox, the d-pads don't work anyway (in 2axis mode).

Thank you both for your replies.
spammenon
Newbie
 
Posts: 2
Joined: 2019-3-03 @ 13:40

Re: DOSBox ECE (for Windows & Linux)

Postby Choum » 2019-3-11 @ 21:15

Hello all,

Does the gravis ultrasound emulation is limited to mono output only.
When I try games sound setup settings like tie fighter, dark force etc.. the digital sound test is always mono with gravis ultrasound unlike Sb16 which is in stereo ouput.

Is it a limitation from the dosbox emulation or a bad setting on my side ?

I use GUS 4.11 drivers, megaem and PPL161 drivers.
Choum
Newbie
 
Posts: 28
Joined: 2016-4-10 @ 10:18

Re: DOSBox ECE (for Windows & Linux)

Postby Choum » 2019-3-13 @ 12:04

In fact this is an issue already in the official dosbox.

Dosbox-X fork have already fixed this problem, will you add such fix into ECE too ?

"- Gravis Ultrasound panning register fixes. Mainline DOSBox seems to have a buggy implementation that ends up locking all audio to center no matter what value is written. I fixed that code in this version. DOS programs that rely on stereo sound should actually play in stereo now through DOSBox."
Choum
Newbie
 
Posts: 28
Joined: 2016-4-10 @ 10:18

Re: DOSBox ECE (for Windows & Linux)

Postby Yesterplay80 » 2019-3-13 @ 14:20

Choum wrote:Dosbox-X fork have already fixed this problem, will you add such fix into ECE too ?

As long as there's no applicable patch file, I'm afraid there's nothing I can do, as 'm no developer myself.
My full-featured DOSBox SVN builds (without debugger) for Windows: Vanilla DOSBox and DOSBox ECE (Enhanced Community Edition)
User avatar
Yesterplay80
Member
 
Posts: 403
Joined: 2016-2-23 @ 11:02
Location: Germany

Re: DOSBox ECE (for Windows & Linux)

Postby Choum » 2019-3-13 @ 15:25

Edit : I was able to reproduce the mono/stereo bug on tie fighter even on dosbox-x if I set true this setting :

gus fixed render rate=true

If set, Gravis Ultrasound audio output is rendered at a fixed sample rate specified by 'gusrate'. This can provide better quality than real hardware, if desired. Else, Gravis Ultrasound emulation will change the sample rate of it's output according to the number of active channels, just like real hardware.
Note: DOSBox-X defaults to 'false', while mainline DOSBox SVN is currently hardcoded to render as if this setting is 'true'.

SO it look like the previous setting I found was not the present.
Choum
Newbie
 
Posts: 28
Joined: 2016-4-10 @ 10:18

Re: DOSBox ECE (for Windows & Linux)

Postby Choum » 2019-3-14 @ 08:06

IS there a list of prerequesite component to compile ECE source (or a ready to go mingw zip) ?
I suppose it will need more lib than the official dosbox.

I would like to try to change the hardcoded render to see the result.
Choum
Newbie
 
Posts: 28
Joined: 2016-4-10 @ 10:18

Re: DOSBox ECE (for Windows & Linux)

Postby Yesterplay80 » 2019-3-14 @ 16:06

Apart from those needed for vanilla DOSBox (see the Wiki) you only need mt32emufrom MUNT and Fluidsynth, on WIndows I still use Fluidsynth 1.16 because it's such a PITA to get a newer one compiled. There's your list. :-)
My full-featured DOSBox SVN builds (without debugger) for Windows: Vanilla DOSBox and DOSBox ECE (Enhanced Community Edition)
User avatar
Yesterplay80
Member
 
Posts: 403
Joined: 2016-2-23 @ 11:02
Location: Germany

Re: DOSBox ECE (for Windows & Linux)

Postby gorzka » 2019-3-17 @ 14:53

Hello,

when I try to compiling this under Linux I become this error:

Code: Select all
In file included from midi_mt32.h:7,
                 from midi.cpp:77:
./mt32emu/mt32emu.h:47:2: Fehler: #error Incompatible setting MT32EMU_API_TYPE=3
 #error Incompatible setting MT32EMU_API_TYPE=3
  ^~~~~
In file included from midi.cpp:77:
midi_mt32.h:10:2: Fehler: #error Incompatible mt32emu library version
 #error Incompatible mt32emu library version
  ^~~~~
make[3]: *** [Makefile:369: midi.o] Fehler 1
make[3]: Verzeichnis „/home/gorzka/Downloads/DOSBox ECE r4194 (Linux source)/src/gui“ wird verlassen
make[2]: *** [Makefile:450: all-recursive] Fehler 1
make[2]: Verzeichnis „/home/gorzka/Downloads/DOSBox ECE r4194 (Linux source)/src“ wird verlassen
make[1]: *** [Makefile:395: all-recursive] Fehler 1
make[1]: Verzeichnis „/home/gorzka/Downloads/DOSBox ECE r4194 (Linux source)“ wird verlassen
make: *** [Makefile:336: all] Fehler 2


The mt32emu library is not in the Source code.
gorzka
Newbie
 
Posts: 7
Joined: 2017-1-11 @ 20:08

Re: DOSBox ECE (for Windows & Linux)

Postby _Rob » 2019-3-17 @ 17:20

gorzka wrote:Hello,

when I try to compiling this under Linux I become this error:

Code: Select all
In file included from midi_mt32.h:7,
                 from midi.cpp:77:
./mt32emu/mt32emu.h:47:2: Fehler: #error Incompatible setting MT32EMU_API_TYPE=3
 #error Incompatible setting MT32EMU_API_TYPE=3
  ^~~~~
In file included from midi.cpp:77:
midi_mt32.h:10:2: Fehler: #error Incompatible mt32emu library version
 #error Incompatible mt32emu library version
  ^~~~~
make[3]: *** [Makefile:369: midi.o] Fehler 1
make[3]: Verzeichnis „/home/gorzka/Downloads/DOSBox ECE r4194 (Linux source)/src/gui“ wird verlassen
make[2]: *** [Makefile:450: all-recursive] Fehler 1
make[2]: Verzeichnis „/home/gorzka/Downloads/DOSBox ECE r4194 (Linux source)/src“ wird verlassen
make[1]: *** [Makefile:395: all-recursive] Fehler 1
make[1]: Verzeichnis „/home/gorzka/Downloads/DOSBox ECE r4194 (Linux source)“ wird verlassen
make: *** [Makefile:336: all] Fehler 2


The mt32emu library is not in the Source code.


I compiled a 64bit version of DOSBox ECE r4194 without problems on Fedora 29, once I installed the mt32 munt packages. I have libmt32emu-2.3.0-1.x86_64 and libmt32emu-devel-2.3.0-1.x86_64 RPMs installed from the munt website.
_Rob
Newbie
 
Posts: 15
Joined: 2019-2-03 @ 10:46

Re: DOSBox ECE (for Windows & Linux)

Postby gorzka » 2019-3-17 @ 18:30

Ah, ok. I will try it.

Thank you
gorzka
Newbie
 
Posts: 7
Joined: 2017-1-11 @ 20:08

Re: DOSBox ECE (for Windows & Linux)

Postby Yesterplay80 » 2019-3-17 @ 22:28

I ran into this problem initially as well: viewtopic.php?t=27560&p=534520#p576837

Turned out you have set the following parameter to false when building mt32emu with CMAKE:
Code: Select all
libmt32emu_REQUIRE_ANSI


Not related, bu you have to enable both the C and the C++ interaface as well, so set these here to true:
Code: Select all
libmt32emu_C_INTERFACE
libmt32emu_CPP_INTERFACE
My full-featured DOSBox SVN builds (without debugger) for Windows: Vanilla DOSBox and DOSBox ECE (Enhanced Community Edition)
User avatar
Yesterplay80
Member
 
Posts: 403
Joined: 2016-2-23 @ 11:02
Location: Germany

Re: DOSBox ECE (for Windows & Linux)

Postby Roger Wilco » 2019-3-18 @ 01:51

Helloes,

I tried both versions, the ECE version and the normal SVN on Linux Debian 9 right now, downloaded from the Yesterplay80 blog.


I am getting an error...
./dosbox: error while loading shared libraries: libSDL_sound-1.0.so.1: cannot open shared object file: No such file or directory.

...although the file is there, with locate:
/usr/lib/x86_64-linux-gnu/libSDL_sound-1.0.so.1

What am I missing?
Normal Dosbox is installed via apt and works.
User avatar
Roger Wilco
Newbie
 
Posts: 52
Joined: 2016-6-03 @ 14:33

Re: DOSBox ECE (for Windows & Linux)

Postby krcroft » 2019-3-18 @ 05:58

DOSBox ECE contains a patch that removes link-dependence on SDL Sound and related libraries (ogg, vorbis, flac, mp3, midi, etc.. )

For example, when compiled on my system, these are the dependencies:

Code: Select all
ldd /usr/local/bin/dosbox
        linux-vdso.so.1 (0x00007ffc208bf000)
        libasound.so.2 => /usr/lib/x86_64-linux-gnu/libasound.so.2 (0x00007f4ea9fcf000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f4ea9db0000)
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f4ea9bac000)
        libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f4ea9874000)
        libGL.so.1 => /usr/lib/x86_64-linux-gnu/libGL.so.1 (0x00007f4ea95e8000)
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f4ea924a000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f4ea8e59000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f4ead7f0000)
        librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f4ea8c51000)
        libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f4ea8a29000)
        libGLX.so.0 => /usr/lib/x86_64-linux-gnu/libGLX.so.0 (0x00007f4ea87f8000)
        libGLdispatch.so.0 => /usr/lib/x86_64-linux-gnu/libGLdispatch.so.0 (0x00007f4ea8542000)
        libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f4ea833e000)
        libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f4ea8138000)
        libbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x00007f4ea7f23000)


If you can compile ECE, I recommend trying to eliminate the unnecessary library dependencies. Otherwise it seems that other libraries are linking in libSDL_sound-1.0.so.1 as a dependency.

You can see your library's dependencies with this simply loop:

Code: Select all
for lib in $(ldd /usr/local/bin/dosbox | awk '{ print $3 }'); do echo "$lib"; ldd "$lib"; echo ''; done
User avatar
krcroft
Member
 
Posts: 225
Joined: 2017-4-29 @ 15:07
Location: Ogden's Retreat

Re: DOSBox ECE (for Windows & Linux)

Postby jmarsh » 2019-3-18 @ 06:45

Roger Wilco wrote:What am I missing?
Normal Dosbox is installed via apt and works.


Did you make a 32-bit build and only have the 64-bit library installed?
jmarsh
Member
 
Posts: 158
Joined: 2014-1-04 @ 09:17

Re: DOSBox ECE (for Windows & Linux)

Postby pantercat » 2019-3-18 @ 12:54

Maybe you've downloaded the binary instead of the source?

DOSBox ECE rXXXX (Linux).7z is 32-bit. If your system is 64-bit and you do not want ie install multiarch, download DOSBox ECE rXXXX (Linux source).7z && extract && compile.

./configure && ./autogen.sh && make

You will have the binary in the src directory.
pantercat
Newbie
 
Posts: 12
Joined: 2018-9-06 @ 17:22

Re: DOSBox ECE (for Windows & Linux)

Postby _Rob » 2019-3-18 @ 14:00

Roger Wilco wrote:Helloes,

I tried both versions, the ECE version and the normal SVN on Linux Debian 9 right now, downloaded from the Yesterplay80 blog.


I am getting an error...
./dosbox: error while loading shared libraries: libSDL_sound-1.0.so.1: cannot open shared object file: No such file or directory.

...although the file is there, with locate:
/usr/lib/x86_64-linux-gnu/libSDL_sound-1.0.so.1

What am I missing?
Normal Dosbox is installed via apt and works.


As others have hinted at, it seems you installed the 64bit version of the SDL libraries, which do not work with the 32bit version of DOSBox.

So, either install the 32bit version of the SDL libraries (you can have both 32 and 64bit versions installed simultaneously), or compile yourself a 64bit version of DOSBox.
_Rob
Newbie
 
Posts: 15
Joined: 2019-2-03 @ 10:46

PreviousNext

Return to DOSBox Development

Who is online

Users browsing this forum: No registered users and 2 guests