It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
avatar
Firebrand9: So, basically, you're forcing it to do an additional translation step. This part is irrefutable.
Does EE also emulate the CPU like DOSBox does, or does it run the code natively? Because those translation steps are probably quite light in comparison.
avatar
Rixasha: Does EE also emulate the CPU like DOSBox does, or does it run the code natively? Because those translation steps are probably quite light in comparison.
EE doesn't emulate CPU, it only translates native DOS calls to win ones (so it is like wine is for windows->linux, but just for dos->windows... DINE? xD )

And yes, it is much lighter than emulating whole machine, like DOSBox does (and I love DOSBox for other uses, mind you).

BUT - the most interesting part is last post from linux discussion on systemshock.org - using DOSEmu for playing SS in Linux. This one also doesn't emulate whole machine and, reportedly, performance beats BOTH EE and DOSBox one. Might be worth trying.

/Estel
avatar
Estel_: BUT - the most interesting part is last post from linux discussion on systemshock.org - using DOSEmu for playing SS in Linux. This one also doesn't emulate whole machine and, reportedly, performance beats BOTH EE and DOSBox one. Might be worth trying.
I can confirm that. It's a bit tricky to setup DOSEmu, but it was worth it. For me, performance of 1024x768 has been absolutely abysmal in DOSBox. EE with Wine is just barely playable, while DOSEmu makes it really comfortable.
I'm using an old Lenovo X60 laptop, so it does make a difference for me. I imagine that on a decent machine EE is just good enough.
Posting this in case it might help some people out there. The solution by Adamhm was not working for me, then I noticed that I had both Timidity++ and Fluidsynth installed on my system. Removing all Timidity files resulted in Adamhm's solution also working for me :)
avatar
Arykles: I don't get the game to work at all. I only get a black screen. Using Wine 1.7.5.
avatar
adamhm: Might be worth trying different Wine versions, and/or perhaps updating/changing your graphics drivers?
Got it working by reverting to version 1.6. Thanks for the tip ;)
avatar
Rixasha: Does EE also emulate the CPU like DOSBox does, or does it run the code natively? Because those translation steps are probably quite light in comparison.
Not entirely. It acts as a translation layer from the DOS version to whatever equivalent Windows function (which is technically what EVERY emulator is doing, the only difference is how completely it does it). It's true that they are somewhat lighter. For a Windows machine though.

For OSX, you're asking it to convert every Win GDI function, to Cocoa (even if it's using OpenGL) via Crossover in addition to the conversion already taking place from the DOS to Windows translation for the EE. In short, it's a 2-step conversion rather than a single step that it would be for DOSBox, and the emulation/conversion of Windows is a more complex process overall.

Bottom line : If it works fine, go with it. But it's worth trying both ways (EE via Crossover/Wine and CE with Mouselook patch in DOSBox) to see what the actual difference is in practice. My bet is the performance would be better in DOSBox, just from understanding the underlying programming involved in all these conversions.
Post edited September 23, 2015 by Firebrand9
avatar
Firebrand9: My bet is the performance would be better in DOSBox, just from understanding the underlying programming involved in all these conversions.
Oh, well I'll just bet the other way then.

Wine Is Not an Emulator, whereas DOSBox is. Certainly there is a performance penalty for using Wine instead of running on Windows, but for the most part that's pretty light. Implementing the whole CPU as well as pretty much the rest of the computer in software - like DOSBox does - is so heavy that anything that runs the code natively on the host CPU should be able to beat it hands down unless it runs into some fairly fundamental bottleneck.

You just got me wondering if EE also did some emulation and why would it do that, but since it doesn't I'll just retreat back to my corner. I'm personally fine running it either way but if my spec was very limited, DOSemu might be an alternative worth trying out.
Just for the records: Is there a possibility to execute the fluidsynth-command in the background while starting for example PlayOnLinux via shellscript? Would be nice to make a simple shortcut for this within my applications. :)
avatar
throgh: Just for the records: Is there a possibility to execute the fluidsynth-command in the background while starting for example PlayOnLinux via shellscript? Would be nice to make a simple shortcut for this within my applications. :)
Sure?
$ fluidsynth -a alsa -si /path/to//soundfont.sf2 &
With a script you would want to gracefully kill it after exiting the game.
Post edited September 24, 2015 by Gydion
avatar
adamhm: As noted by others in the release thread, I've found that System Shock Enhanced Edition appears to run perfectly in Wine except that there's no music. I've got the music working on my system (running Linux Mint) by doing the following:

First, install the packages "fluidsynth" and "fluid-soundfont-gm" (you can ignore the second one if you want to use an alternative soundfont). Then, before you start the game, start fluidsynth with this command:

fluidsynth --audio-driver=alsa /usr/share/sounds/sf2/FluidR3_GM.sf2

(if you're using a different soundfont then substitute /usr/share/sounds/sf2/FluidR3_GM.sf2 with the soundfont you want to use).

Leave it to run in the background as you play SSE and exit when you're done playing.
Hey, thanks for the tip, unfortunately it didn't work for me, here is the result (I had to replace "alsa" with "pulseaudio")

fluidsynth --audio-driver=pulseaudio /usr/share/sounds/sf2/FluidR3_GM.sf2
FluidSynth version 1.1.6
Copyright (C) 2000-2012 Peter Hanappe and others.
Distributed under the LGPL license.
SoundFont(R) is a registered trademark of E-mu Systems, Inc.

fluidsynth: warning: Failed to pin the sample data to RAM; swapping is possible.
fluidsynth: Using PulseAudio driver
Type 'help' for help topics
I tried it with ALSA installed now and got a similar result:

fluidsynth --audio-driver=alsa /usr/share/sounds/sf2/FluidR3_GM.sf2
FluidSynth version 1.1.6
Copyright (C) 2000-2012 Peter Hanappe and others.
Distributed under the LGPL license.
SoundFont(R) is a registered trademark of E-mu Systems, Inc.

fluidsynth: warning: Failed to pin the sample data to RAM; swapping is possible.
fluidsynth: warning: Requested a period size of 64, got 940 instead
fluidsynth: warning: Requested 16 periods, got 8 instead

Type 'help' for help topics.
Although the music is playing now with Alsa, the music seems to be completely off compared to the one I get on WinXP.
Post edited September 24, 2015 by Klumpen0815
avatar
throgh: Just for the records: Is there a possibility to execute the fluidsynth-command in the background while starting for example PlayOnLinux via shellscript? Would be nice to make a simple shortcut for this within my applications. :)
avatar
Gydion: Sure?

$ fluidsynth -a alsa -si /path/to//soundfont.sf2 &
avatar
Gydion: With a script you would want to gracefully kill it after exiting the game.
Thanks: Worked with

fluidsynth --audio-driver=alsa -is /usr/share/sounds/sf2/FluidR3_GM.sf2 &
For what it's worth, here's how I made it work under OS X 10.10.5 (without any music enhancement or other modification):
Wineskin, WS9Wine1.7.51 engine
Install the Enhanced Edition - I got error messages at the end of installation, but that's fine
Select sshock.exe as executable (in Screen Options)
Use Mac driver instead of X11
Enjoy the game!
It's running perfectly on my MacBook Pro 2014, much more fluid than it was in DOSBox in 640x480.
It's a shame Night Dive or GOG didn't make it clear how much of the enhancements are created by the fan community though. :( Same with SS2.
Post edited September 25, 2015 by csd79
avatar
Rixasha: Wine Is Not an Emulator, whereas DOSBox is. Certainly there is a performance penalty for using Wine instead of running on Windows, but for the most part that's pretty light. Implementing the whole CPU as well as pretty much the rest of the computer in software - like DOSBox does - is so heavy that anything that runs the code natively on the host CPU should be able to beat it hands down unless it runs into some fairly fundamental bottleneck.

You just got me wondering if EE also did some emulation and why would it do that, but since it doesn't I'll just retreat back to my corner. I'm personally fine running it either way but if my spec was very limited, DOSemu might be an alternative worth trying out.
Any translation layer is a form of emulation, however incomplete. Win GDI is NOT a trivial GUI layer to convert (try programming it an you'll see), and the fact that isn't not emulating an ENTIRE CPU, doesn't alter this fact. But this is all semantics and not essential to the the thrust of my point.

EE does act as a further translation layer to the DOS functions and converts them to the Windows equivalent.

My main point was to inform people of what exactly is going on so they could choose optimal solutions for running the game. Two translation steps is one too many if you ask me and I would never choose that as a means of playing this fine game. I think many people are getting caught up in the whole idea of the EE being the "coup de grace" to all other versions, and I'm saying this is simply not true.

All things considered, it's a slight improvement over the DOSBox version in that a marginally higher res can had without performance (or mouse wonkiness) issues, but ONLY under Windows, where no further tradeoffs are made. The CE with Mouselook patch added is at least 95% of the EE. Mind you, the EE is just an evolution/combination of both Malba Tahan's Mouselook patch (revolutionary) and Shlink project (with some further development to add music). That's pretty much it.

Anything where an additional translation layer (as I explained in prior posts) is going to take an additional performance hit, which I find unacceptable. If I attach a stick to the gas pedal in my car, it's not as effective as me just stepping on the pedal. Further, if I need some guy in the back seat to tell me when to push said stick, it's going to be even LESS efficient. But it's your experience. Choose whatever you want, whatever works for you, but do so with knowledge of what's occurring and OPTIONS.
Post edited September 25, 2015 by Firebrand9
avatar
Firebrand9: Any translation layer is a form of emulation, however incomplete.
I was trying to be funny with that line. Wine actually stands for Wine Is Not an Emulator. Here is a relevant Debunking Wine Myths page on the Wine wiki.

I have played games on Wine since Baldur's Gate was new, and you're severely overestimating the weight of these translation steps. Sometimes there are bottlenecks that really hurt performance if the game happens to be designed in some specific way, but when everything works right they're pretty light. And when the game is old and the computer is new, thinking about them is pointless.

You're also grossly underestimating the weight of emulation - DOSBox is really, really heavy and not a viable option for old computers. Just check the table on the Performance page on its wiki. One striking example is that you need a 3.0 GHz Pentium 4 to emulate a 166 MHz Pentium. And that's with the dynamic core, the normal core may be ten times slower.

Wine or not, DOSBox simply can't compete with the EE performance-wise.
Post edited September 25, 2015 by Rixasha
avatar
Rixasha: Wine or not, DOSBox simply can't compete with the EE performance-wise.
That is also my current experience: I've installed the game using Wine 1.6 ans was surprised how good it worked out of the box without any further adjustments needed. After fixing the tweak for the music mentioned within this thread there is no problem running the game through Wine while Dosbox had its problems!