[GAMES] dosbox-staging -- one of the best choice for DOS gaming

Started by tle, August 25, 2023, 07:34:58 AM

Previous topic - Next topic

tle

We all have heard about the JIT patch of our fellow member ClassicHasClass for the original dosbox which could be found here https://www.talospace.com/2020/01/dosbox-jit-on-ppc64le-and-how-you-can.html
His patch though not apply cleanly to the dosbox SVN trunk, however with a bit of tweak, it still work perfectly with PCPBENCH reports 28.3fps!!

Another fork of dosbox is dosbox-staging that supports PPC64LE JIT out of the box (again thanks to ClassicHasClass) is another great option but performance is not as good as that of patched JIT dosbox. The PCPBENCH can get up to 17.1fps
(ref: https://github.com/dosbox-staging/dosbox-staging/commits/main/src/cpu/core_dynrec/risc_ppc64le.h)

I am going to dig in the source code of dosbox-staging to see how they did the PPC64LE JIT and why it is slower


EDIT: Great thanks to ClassicHasClass for the Pull Request https://github.com/dosbox-staging/dosbox-staging/pull/2828

Now dosbox-staging can achieve 41 fps!

Faithful Linux enthusiast

My Raptor Blackbird

tle

It turns out PPC64LE JIT is currently disabled

https://github.com/dosbox-staging/dosbox-staging/commit/515161087c8e66b57f8c73ec289ae4b3a4f4548a

QuoteUpstream SVN r4424 started refactorization of cpu module, and it breaks
those backends; to be re-enabled once refactorization is done or when
we'll have time to fix it ourselves.
Faithful Linux enthusiast

My Raptor Blackbird

ClassicHasClass

I'll have a look. I see you opened an issue. I've been happy with my old build for so long I've never really checked current ones.

tle

Faithful Linux enthusiast

My Raptor Blackbird

tle

Faithful Linux enthusiast

My Raptor Blackbird

tle

dosbox-staging has officially removed PPC64LE JIT backend in 0.83.0 because they are unable to maintain the work without access to hardware.

So I've decided to fork the project to re-introduce this feature, see https://github.com/runlevel5/dosbox-staging-power/pull/2, the goal is to be able to produce a patch file for downstream packagers to re-introduce PPC64LE JIT.
Faithful Linux enthusiast

My Raptor Blackbird

MPC7500

I don't think that's the reason. AI slop detected.
Why can't you reply to them? Same thing with box64.

mparnaudeau

@tle Bad news :-( Did they ask for someone that would have been able to take care of the pp64le port? The most difficult was done with the initial work ... Do you think they may reconsider their decision? Having a fork allows to save this work but is not the best on long term.

ClassicHasClass

I doubt they will reconsider it, and I don't intend to contribute any further work upstream given the relative abruptness of the decision. That said, it's their project and their policies, of course.

Hasturtium

So what's the best option now? Is there a specific version I should download, compile, and use moving forward?

ClassicHasClass

tle has a fork of it with the JIT I wrote just before the deletion landed.