VOGONS


DOSBox ECE (for Windows & Linux)

Topic actions

Reply 1501 of 1550, by Giuliano

User metadata
Rank Newbie
Rank
Newbie

Hi everyone,

I was using DOSBox ECE r4447, and upgraded it today to r4481. I've noticed that the line below was removed from the dosbox-ece.conf file:

gusrate = 44100

I am supposing that it was also removed from the SVN version.

What was the reason behind this removal?

Does it mean that the gusrate value is now fixed at 44100? Or: does it mean that the gusrate value is now equal to the mixer's rate value?

Cheers.

Reply 1502 of 1550, by realnc

User metadata
Rank Oldbie
Rank
Oldbie
Giuliano wrote on 2022-09-17, 14:07:
I was using DOSBox ECE r4447, and upgraded it today to r4481. I've noticed that the line below was removed from the dosbox-ece.c […]
Show full quote

I was using DOSBox ECE r4447, and upgraded it today to r4481. I've noticed that the line below was removed from the dosbox-ece.conf file:

gusrate = 44100

I am supposing that it was also removed from the SVN version.

What was the reason behind this removal?

Does it mean that the gusrate value is now fixed at 44100? Or: does it mean that the gusrate value is now equal to the mixer's rate value?

I believe the GUS uses a rate that depends on the amount of the currently used channels. Apparently, dosbox now emulates this properly and thus there's no "gusrate" option anymore. The rate matches what the real hardware would use, and then it gets resampled to the mixer rate.

Reply 1503 of 1550, by jmarsh

User metadata
Rank Oldbie
Rank
Oldbie

It was removed because performing upsampling in the GUS code (rather than the mixer) blended samples that should have been left out of the output entirely. Typically this caused samples from opposite channels to be blended together, ruining stereo separation.

Reply 1504 of 1550, by videogamer555

User metadata
Rank Member
Rank
Member
Yesterplay80 wrote on 2017-02-08, 07:35:

Please post all questions concerning DOSBox ECE in this thread for now on, so we can keep other threads tidy and on topic!

I compiled a build of DOSBox ECE for Linux. Consider it highly experimental, since I only run Linux in a VM, I can't test all the features, because the VM is lacking hardware acceleration. So it would be very nice if someone could run some tests with it. It comes (or should come) with all the features of the Windows build, minus the possibility to select the midi device by name or a part of it. Please download it (link is in my signature), play with it and let me know if something's not working or missing!

What is ECE?

Reply 1505 of 1550, by morphinejh

User metadata
Rank Newbie
Rank
Newbie
videogamer555 wrote on 2022-10-18, 08:23:

What is ECE?

It stands for Enhanced Community Edition.

More details here:
https://yesterplay.net/dosboxece/

(it does look to be down at the moment though)

Update: Expired certificate at the moment.

Last edited by morphinejh on 2022-10-19, 14:12. Edited 1 time in total.

Reply 1506 of 1550, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
morphinejh wrote on 2022-10-19, 13:50:
.... More details here: https://yesterplay.net/dosboxece/ […]
Show full quote

....
More details here:
https://yesterplay.net/dosboxece/

(it does look to be down at the moment though)

It's not down per se but it has a certificate error:

ece1.png
Filename
ece1.png
File size
154.14 KiB
Views
3821 views
File license
Public domain

To be honest I never understood the Google forced https everywhere movement. Why should a simple download site that does not require any user login/data be available only through https and redirect any http connection attempts to non-working https? (It uses HTTP Strict Transport Security policy.)
So you should try an alternative browser that still enables you to add an exception even in case of non-working certificates and HTTP Strict Transport Security (HSTS) sites.

Last edited by Falcosoft on 2022-10-19, 14:17. Edited 1 time in total.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 1507 of 1550, by morphinejh

User metadata
Rank Newbie
Rank
Newbie
Falcosoft wrote on 2022-10-19, 14:05:

It's not down per se but it has a certificate error:

Good point, I updated above. I don't use Chrome directly, but rather one of its Chromium variants. I can advance through it manually, but didn't want to post that as instructions per se.

Reply 1508 of 1550, by Dr. Rabbit

User metadata
Rank Newbie
Rank
Newbie

Any idea why I can't seem to get reverb working with the integrated fluidsynth? Changing the fluid.reverb.roomsize, fluid.reverb.damping , fluid.reverb.width or fluid.reverb.level variables in dosbox-ECE.conf even to extreme numbers doesnt do anything. Reverb is enabled, of course, with fluid.reverb being "yes". I'm currently using this SC-55 soundfont.

Not a real doctor.

Reply 1509 of 1550, by morphinejh

User metadata
Rank Newbie
Rank
Newbie
Dr. Rabbit wrote on 2022-11-08, 13:54:

Any idea why I can't seem to get reverb working with the integrated fluidsynth? Changing the fluid.reverb.roomsize, fluid.reverb.damping , fluid.reverb.width or fluid.reverb.level variables in dosbox-ECE.conf even to extreme numbers doesnt do anything. Reverb is enabled, of course, with fluid.reverb being "yes". I'm currently using this SC-55 soundfont.

I think it may be related to a change in the source code that involves doing a comparison of text in [src/gui/midi_fluidsynth.h]. I commented on this a few posts ago. I believe it is the source of your problem.

In lines 94-101 the comparison will not work as they are typed:

		if (section->Get_string("fluid.reverb")=="yes")
fluid_settings_setint(settings, "synth.reverb.active", 1);
else
fluid_settings_setint(settings, "synth.reverb.active", 0);
if (section->Get_string("fluid.chorus")=="yes")
fluid_settings_setint(settings, "synth.chorus.active", 1);
else
fluid_settings_setint(settings, "synth.chorus.active", 0);

Reference:

morphinejh wrote on 2022-06-11, 03:20:
@Yesterplay80, @supin […]
Show full quote

@Yesterplay80, @supin

Yesterplay80 wrote on 2022-06-04, 00:39:
supin wrote on 2022-06-02, 16:32:

Hello.
You have an error in your code src/gui/midi_fluidsynth.h

Even though that wasn't the cause of MIDI playback not working (see above) I appreciate pointing this error out, thank you very much! That should be fixed as well.

I believe there is an error with this code. I didn't realize until I was comparing r4479 to r4477. The code in that post is doing a direct comparison between two character arrays (const char*) using ==. This is undefined behavior as it is really just comparing the value of two pointers and not the string itself. If they were C++ string types it would work, but they appear to be simple character arrays.

It is defined on line 289 of: include/setup.h
const char* Get_string(std::string const& _propname) const;

The correct way to do the comparison would be using the strcmp() function like this:

		if (strcmp(section->Get_string("reverb.active"),"yes") != 0) {
fluid_settings_setint(settings, "synth.reverb.active", 0);
} else {
fluid_settings_setint(settings, "synth.reverb.active", 1);
}

if (strcmp(section->Get_string("chorus.active"),"yes") != 0) {
fluid_settings_setint(settings, "synth.chorus.active", 0);
} else {
fluid_settings_setint(settings, "synth.chorus.active", 1);
}

Every C-string comparison should use that function. It returns 0[zero] if they match. You can find the entire file I use here:
https://github.com/morphinejh/dosboxece-opl/b … di_fluidsynth.h

The file I use has been adapted for the new fluidsynth API so it may differ slightly from what DosboxECE uses in its source, but the the string compare function is correct for any comparison.

EDIT: Adding original post for reference.

supin wrote on 2022-06-02, 16:32:
[…]
Show full quote
                fluid_settings_setint(settings, "audio.periods", atoi(section->Get_string("fluid.periods")));
fluid_settings_setint(settings, "audio.period-size", atoi(section->Get_string("fluid.periodsize")));
if (section->Get_string("fluid.reverb")=="yes")
fluid_settings_setint(settings, "synth.reverb.active", 1);
else
fluid_settings_setint(settings, "synth.reverb.active", 0);
if (section->Get_string("fluid.chorus")=="yes")
fluid_settings_setint(settings, "synth.chorus.active", 1);
else
fluid_settings_setint(settings, "synth.chorus.active", 0);

Reply 1511 of 1550, by symbios24

User metadata
Rank Newbie
Rank
Newbie

Hello there

I want to build the latest dosbox-ece
So i can install windows 98/ME in my Raspberry Pi4
But i dont know were to start from
Eg: were i can download the latest source code,what are the depends and how to build???

Ps: Tried an old version that dosbian has but its failing after install windows 98 it crashes

Any help is appreciated

Thank you

Reply 1512 of 1550, by realnc

User metadata
Rank Oldbie
Rank
Oldbie
symbios24 wrote on 2023-01-10, 14:45:

I want to build the latest dosbox-ece
So i can install windows 98/ME in my Raspberry Pi4
But i dont know were to start from

Doesn't this build work for you: https://github.com/realnc/dosbox-ece/releases … ag/latest_build

Reply 1513 of 1550, by symbios24

User metadata
Rank Newbie
Rank
Newbie

Is there a guide to install Windows 98 / ME in the Raspberry Pi 4???

I followed some guides before but it crashes to the desktop on first boot with explorer and other misc errors

The only working dosbox was the dosbox-X

But the performance there was very very slow

I saw videos of dosbox-svn and dosbox-ece running very good Windows 98 but couldn't install them successfully i got the errors described above

Thanks

Thanks

Reply 1514 of 1550, by morphinejh

User metadata
Rank Newbie
Rank
Newbie
symbios24 wrote on 2023-01-10, 17:22:
Is there a guide to install Windows 98 / ME in the Raspberry Pi 4??? […]
Show full quote

Is there a guide to install Windows 98 / ME in the Raspberry Pi 4???

I followed some guides before but it crashes to the desktop on first boot with explorer and other misc errors

The only working dosbox was the dosbox-X

But the performance there was very very slow

I saw videos of dosbox-svn and dosbox-ece running very good Windows 98 but couldn't install them successfully i got the errors described above

Thanks

Thanks

Hello symbios24

I'm not aware of said instructions. However I tried it over this past weekend and got it to work to the main Windows98 screen. It isn't a trivial task. It requires a HardDisk Image file and a boot disk. You will not be able to do it directly from the Shell that Dosbox provides.

Were you able to get DosboxECE working on the PI4? (that would be step 1)

Reply 1515 of 1550, by stanwebber

User metadata
Rank Member
Rank
Member

what is the current state of win98 support? i've searched this thread a little and understand the dosbox binary itself (despite being compiled with a visual studio ver not targeting win98) will run under win98, but the static sdl libraries need to be replaced with win98 friendly versions. i have actually compiled svn 4481 with munt support using mingw that is completely win98 compatible so i already have replacement static sdl libraries ready to go.

my question is will any of the other addon patches work under win98, specifically munt or fluidsynth? or were those libraries compiled targeting xp or later?

is there perhaps an older version of dosbox ece known to completely work with win98 since it was compiled with an older visual studio targeting win98?

Reply 1516 of 1550, by morphinejh

User metadata
Rank Newbie
Rank
Newbie
stanwebber wrote on 2023-02-22, 04:50:

what is the current state of win98 support? i've searched this thread a little and understand the dosbox binary itself (despite being compiled with a visual studio ver not targeting win98) will run under win98, but the static sdl libraries need to be replaced with win98 friendly versions. i have actually compiled svn 4481 with munt support using mingw that is completely win98 compatible so i already have replacement static sdl libraries ready to go.

my question is will any of the other addon patches work under win98, specifically munt or fluidsynth? or were those libraries compiled targeting xp or later?

is there perhaps an older version of dosbox ece known to completely work with win98 since it was compiled with an older visual studio targeting win98?

That is an interesting question. If it were capable of launching, I don't think a Windows 98 era PC would be capable of handling both Dosbox emulation as well as Fluidsynth and/or MT-32 emulation simultaneously with any good results. You would be better off running the Windows 98 machine in MS-DOS mode directly (or boot disk) and using Setmul with some cache disabling to slow it down to your needs (or not for later dos games).

I would be interested to know if it launches though. I have a machine I can test it on. It will have to wait to the weekend before I can get it out.

Have you tried it yourself ?

Reply 1517 of 1550, by stanwebber

User metadata
Rank Member
Rank
Member

i'm pretty sure win98 will run comfortably on lga775 systems and later. in any case, my win98 build is on a kt133a board with a 1.8ghz athlon and pc-133 ram running at 5-2-2 timings.

i tried out ece r4481 under win98. it will run with either my compiled or the v0.74.3 sdl libraries. the mt32emu libraries also load, but fluidsynth complains about the ver of glib.

it's too bad they didn't pick bassmidi or timidity. ece, with it's conservative directed set of patches, could have been the premiere dosbox edition for win98 if not for the requirements of fluidsynth.

Reply 1518 of 1550, by morphinejh

User metadata
Rank Newbie
Rank
Newbie
stanwebber wrote on 2023-02-24, 18:01:

i'm pretty sure win98 will run comfortably on lga775 systems and later. in any case, my win98 build is on a kt133a board with a 1.8ghz athlon and pc-133 ram running at 5-2-2 timings.

i tried out ece r4481 under win98. it will run with either my compiled or the v0.74.3 sdl libraries. the mt32emu libraries also load, but fluidsynth complains about the ver of glib.

it's too bad they didn't pick bassmidi or timidity. ece, with it's conservative directed set of patches, could have been the premiere dosbox edition for win98 if not for the requirements of fluidsynth.

@stanwebber

Well that's actually good news. And I have good news too. I got my Windows 98 box setup and ran into the same issues you did. I don't have an easy way to compile for Windows 98, but I know libglib has older binaries that do work on windows 98. I don't know the newest version that will work, but I know this version will work:

In addition to your instructions about using the older SDL.dll and SDL_Net.dll, it worked well enough for testing. I'm running a Slot A Athlon 750Mhz and performance is good enough for older dos games. I only tested a few games for sound working. Duke Nukem 3D isn't playable, but many older games are. However, I can run most titles natively without Dosbox that are 90's or later, so not really an issue. I do find the MT-32 feature more valuable than fluidsynth for this era of PC. I can just load sound fonts onto the sound card (AWE64) and forgo the Resource hit for synthesizing it.

Hope it helps! More research coudl be done to find the absolute newest verison that would work. Or possibly a new build targeting Windows 98.

Reply 1519 of 1550, by stanwebber

User metadata
Rank Member
Rank
Member

i have cmake, mingw and vs2005 build environments that can target win98, but compiling even the oldest ver 1 build of fluidsynth i could find on sourceforge was a no-go. it would require fairly recent build tools manipulated to target win98 which i don't know is even possible anymore.

until recently, there weren't even winxp or non-sse2 precompiled binaries of any fluidsynth builds. a little bird had to go and request them.