Comments (8)
OK, I can replicate what you're describing and the in-game music does indeed play in both OS X and Windows DOSBox, but is absent in Boxer.
For the sake of precision I should note that the missing music isn't necessarily MIDI: the GOG release comes preconfigured to use Sound Blaster 16 for music, which plays it via FM synthesis (which uses quite a different emulation pathway than actual MIDI playback).
This indicates that it's not a problem with Boxer's own custom MIDI-handling, but probably that some difference between Boxer's emulation environment and DOSBox's is confusing the game into not playing the music. The trial continues.
from boxer.
I've tracked the problem now and boy what a doozy…
For its own use, Boxer sets a bunch of extra variables in the DOS environment that point to its own temp paths and things like that. These are pushing the DOS environment size into a zone where Dragonsphere will (for some bizarre buggy reason of its own) stop being able to play music and SFX at the same time.
Adding more environment variables, or removing enough existing variables, will cause the music to play properly once again. (I discovered this paradoxically by re-enabling Gravis Ultrasound emulation, which had been disabled by GOG's configuration for the game: GUS emulation adds a couple of extra environment variables that push the environment size back out of that sweet-spot that was fucking with Dragonsphere.)
I'll do some more testing to figure out exactly what the cutoff is for this. The solution will probably be to disable some of Boxer's own environment variables when running Dragonsphere to avoid the bug arising.
from boxer.
OK, commit #b807845 adds a configuration for Dragonsphere which should ensure that music + SFX work properly with GOG and non-GOG releases of Dragonsphere alike.
Rather than change environment variables or conventional memory size, the fix simply runs the LOADFIX -F command before launching the game. This would normally be useless, but here has the side-effect of consolidating conventional memory, which seems to be enough to keep the game happy. If you are able to build from source, please try doing so from the latest commit and see if any other spots in the game exhibit missing music.
from boxer.
Thanks, great work on a pretty weird bug! I'm not able to build from source on this computer, but I can confirm that either running "loadfix -f" or enabling GUS emulation causes the in-game background music to play again. I'll play through the rest of the game in Boxer using the loadfix fix, and I'll report it if I have any other music problems.
Oh, and I don't know if this is the correct place to tell you, but since you've added a configuration for Dragonsphere just now, you'll probably want to set it to enforce normal CPU core emulation instead of dynamic. As reported on the GOG forums (and experienced by myself), the dynamic core causes occasional random crashes when going from one screen to another in-game. I've had no problems since I've set the core emulation to normal.
from boxer.
Ok, thanks for the heads-up - I'll force it to normal, and add a flag to disregard GOG's own configuration for this game. Is there a particular CPU speed that has worked out better for you than the 8000 that GOG have assigned it?
from boxer.
Great! I've been running it on 10000 cycles, but mostly because I was playing around with the settings (it's my first time using Boxer) and forgot what they were originally set to. I'm sure 8000 cycles work just as well.
from boxer.
Quick update: I've finished the game now using loadfix. I had no further problems, either with sound or with crashing, so it seems like things are working perfectly.
from boxer.
Great, thanks for that confirmation! :)
from boxer.
Related Issues (20)
- Can't compile the master 64 bit Boxer, help needed =( HOT 25
- Magic mouse buttin not working HOT 8
- 64 bit builds do not support joysticks HOT 13
- not running on 10.15 Catalina HOT 2
- Boxer Crashes under Parallels HOT 1
- save games not work since 64bit update ?! HOT 7
- Support compressed .boxer bundles or inner .harddisk containers.
- CD Audio is stuttering and making the game jittery in 64-bit build HOT 4
- Is Boxer a still active project? HOT 1
- Mac ARM (Apple Silicon)-native build HOT 5
- License file
- Active Fork? HOT 1
- App crashes when trying to print HOT 5
- Boxer Bundler creating a non-working standalone HOT 2
- 2 Gamepads
- New version of Boxer coming? HOT 4
- PC booter games saving HOT 5
- Render non-latin characters HOT 1
- DDHidLib/DDHidLib.h File Not Found HOT 2
- Migrate to DOSBox's overlay drives
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from boxer.