RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    [DOSBox] official thread

    Scheduled Pinned Locked Moved Help and Support
    dosdosboxdosbox-stagingdosbox-xdosbox-pure
    234 Posts 27 Posters 79.3k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • ExarKunIvE
      ExarKunIv @ecto
      last edited by

      @ecto how hard was it to get the stage to work on the Pi. i remember from some if the past posts that it was not really messed with yet. just asking before i make the jump

      RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
      RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
      Maintainer of RetroPie-Extra .

      ectoE 1 Reply Last reply Reply Quote 0
      • N
        nemo93 @mitu
        last edited by nemo93

        @mitu thanks you're correct. I ran into issue with that backend in the past and it's the reason why I disabled it from within my script. I need to retest given the many changes brought to Staging and to be sure.

        1 Reply Last reply Reply Quote 0
        • ectoE
          ecto @ExarKunIv
          last edited by

          @exarkuniv Well... it depends...

          I have a custom dosbox starting script that starts Timidity++ or Munt, depending on the game. It also passes along specific game conf files to the dosbox executable.

          All I really had to do there, was exchanging the SVN executable for the Staging one.

          ** BUT** what really changed, is the way Staging handles the cycles setting! I usually used cycles = max in SVN, which doesn't work for Staging at all.

          So while my transition was quite smooth, it somehow wasn't (if you understand what I mean). Right now I'm exchanging all my GOG CD games (that usually rely on cue sheets with .ogg audio) with real images of the CD to keep the processing power for the audio decoding low. Somehow I have the feeling, that SVN handled that better.

          All in all, I certainly won't go back. The pixel-perfect scaling alone is just too nice to miss! Also, as @nemo pointed out, MT32 is soon to be integrated into Staging, which is also very nice!

          ectoE 1 Reply Last reply Reply Quote 1
          • ectoE
            ecto @ecto
            last edited by

            Ok... I just did some more experimenting and I must say I'm very confused!
            Especially the "higher resolution" (640x480) games are not running well for me on Staging. D:
            I tried again with SVN and those games run fluently (!) and without sound distortions/crackling. Here is a list of games I compared directly:

            • Crusader No Remorse
            • Wing Commander 3
            • Dungeon Keeper (in hi-res mode)
            • Timeshock
            • Syndicate Wars (in hi-res mode)

            I'm a little stumped, but maybe I will stick with SVN at least for those games... I even tried an recompiled Staging without the rpi4 optimization, but it made no difference. Some games just won't run fluently... :(

            N 1 Reply Last reply Reply Quote 0
            • N
              nemo93 @ecto
              last edited by

              @ecto thanks again for your continuous feedback. Much appreciated! For both Bullfrog games, Dungeon Keeper and Syndicate Wars in hi-res I'm surprised. Back in the days those games required a bleeding-edge Pentium to run in SVGA/hi-res to the point I never saw them running properly in SVGA! With our Pi4 we can come close to a Pentium 75 so I never thought it would be possible to run those games in SVGA. The only games I'm able to run in such hi-res are Mechwarrior 2 and it's addon Mercenaries as well as Fade To Black (with 100000 cycles). For DK and SyndWar I'm having 80000 cycles and they do run fullspeed in VGA/lo-res mode. Both work fine with the DOS32a extender.

              Crusader and Dungeon Keeper are 2 games which require machine = svga_s3 to run fine under Staging. I do have cycles = 60000
              for Crusader and it runs quite nicely I'd say almost fullspeed here with Staging and those settings.

              I really need to spend more time on the Wing Commander's serie. I've done only basic testing and I'm afraid I can't comment further.

              Fortunately Retropie is super flexible and it's easy to pick a specific emulator per game :-) Feel free to switch back to SVN for the games that run best on another fork or SVN.

              ectoE 1 Reply Last reply Reply Quote 0
              • ectoE
                ecto @nemo93
                last edited by

                @nemo93 Yeah, I was a little surprised as well! I just converted my cdda games from ogg to wav or bin and hoped for a better result... Then I tried it with the installed svn and it's really running fluently. I had to change the cycles back to max in svn, but that was it.
                Well, I will probably use svn for the 10 odd svga games and the rest with Staging, because the look of Staging is so much cleaner with pixelperfect output. Since Staging is still in very active development I'm confident, that it will get only better with time.
                Do you think the developers are aware of this svga discrepancy?

                N 1 Reply Last reply Reply Quote 0
                • themazingnessT
                  themazingness
                  last edited by

                  DOSBox Pure is available for public testing:
                  https://github.com/schellingb/dosbox-pure#download

                  1 Reply Last reply Reply Quote 3
                  • N
                    nemo93 @ecto
                    last edited by

                    @ecto would you mind sharing your full conf please (game.conf + dosbox.conf + OS/kernel/Retropie)? I'll reproduce here as I can't see why such big differences between SVN and Staging. For now there's no evidence about an issue in the "svga code" but anything supporting this will be helpful.

                    I've tried Timeshock and it's running very smoothly even in higher resolution. Is your issue only about sound distortion or is it also about slow video emulation?

                    @themazingness thanks for that. Any feedback about Pure would be much appreciated as it looks an interesting fork.

                    ectoE 1 Reply Last reply Reply Quote 0
                    • ectoE
                      ecto @nemo93
                      last edited by

                      @nemo93 said in [DOSbox] official thread:

                      @ecto would you mind sharing your full conf please (game.conf + dosbox.conf + OS/kernel/Retropie)? I'll reproduce here as I can't see why such big differences between SVN and Staging. For now there's no evidence about an issue in the "svga code" but anything supporting this will be helpful.

                      I'll do that in the next couple of days. I'll try to do it tonight, but you never know what else is left to do to prepare for Christmas ;)
                      With OS/Kernel config you mean /boot/config.txtright?

                      I've tried Timeshock and it's running very smoothly even in higher resolution. Is your issue only about sound distortion or is it also about slow video emulation?

                      It's usually a crackling and from time to time a distorted short bleeping/screeching. IIRC the emulation speed is ok, but it might skip "in sync" with the crackling.

                      Yesterday I tried "Dark Forces" and it was also crackling and the gameplay was skipping. It runs good on SVN...

                      N 1 Reply Last reply Reply Quote 0
                      • N
                        nemo93 @ecto
                        last edited by

                        @ecto Don't worry I know what you mean regarding Christmas :D No rush, do what you can whenever you can! Yes if you could share the various DOSBox conf files you're using as well as the kernel version you're using (also are you using "full" or "fake" KMS driver) that would be great. Mention if you're using any overclock. If you don't know regarding kernel/KMS then please share your /boot/config.txt indeed.

                        The crackling for sure is coming from the specific Staging "pi4" branch we discussed above. Crackling shouldn't be heard if using the master branch and always setting less than 35000 cycles (which is the max cycles mark on both pi3B+ and pi4, above that value crackling should be heard and slowdowns will occur).

                        Dark Forces (another fantastic Star Wars game from that era that must not be forgotten about!!) is running very fine. I'm having General Midi + SB16 set up, machine = vesa_nolfb and 25000 cycles. Everything is running fullspeed and no sound issue to report. Don't forget to switch DOS4GW for the DOS32A extender.

                        If you have time I wonder if you could try my "default" conf file and give it another test with Dark Forces for instance.

                        ectoE 1 Reply Last reply Reply Quote 0
                        • X
                          xwons
                          last edited by

                          Does anyone know how to try dosbox pure in retropie, now that it has been released?

                          ExarKunIvE 1 Reply Last reply Reply Quote 0
                          • ExarKunIvE
                            ExarKunIv @xwons
                            last edited by ExarKunIv

                            @xwons for right now you have to compile it yourself

                            https://retropie.org.uk/forum/topic/28924/dosbox-in-retroarch-any-chance-we-can-have-this-on-the-pi

                            RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
                            RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
                            Maintainer of RetroPie-Extra .

                            1 Reply Last reply Reply Quote 1
                            • ectoE
                              ecto @nemo93
                              last edited by

                              @nemo93 I found a little time today:

                              Here are my

                              • DosBox SVN conf (to compare with stagings conf file)
                              • DosBox Staging conf
                              • Timeshock.conf
                              • config.txt (using fkms for Amiberry and Daphne)
                              • Kernel is Linux retropie 4.19.118-v7l+ #1311 SMP Mon Apr 27 14:26:42 BST 2020 armv7l GNU/Linux

                              I fiddled around a lot with everything (that's just how I work ;) So idk if the config.txt is all in order. But so far I haven't had any lockups or other problems with it.

                              And now I off, wrapping gifts ;)

                              Thanks for having a look!

                              R 1 Reply Last reply Reply Quote 2
                              • R
                                retro81 @ecto
                                last edited by retro81

                                Hi all, are we discussing here the new lr-dosbox-pure emulator, or should I use another thread?

                                1 Reply Last reply Reply Quote 0
                                • quicksilverQ
                                  quicksilver
                                  last edited by

                                  Has anyone managed to get dosbox-x up and running on a pi 4? Very curious if it would be possible to run some windows games using it...

                                  1 Reply Last reply Reply Quote 0
                                  • LolonoisL
                                    Lolonois
                                    last edited by

                                    @nemo93 and other dosbox-staging users here:

                                    Recently their build process has been changed to meson.
                                    I adapted the dosbox-staging.sh scriptmodule in the Wiki of dosbox-staging.

                                    @mitu what is the process/are the quality gates to get the script as experimental into RetroPie-Setup repo?

                                    Cheers

                                    mituM jamrom2J 2 Replies Last reply Reply Quote 0
                                    • mituM
                                      mitu Global Moderator @Lolonois
                                      last edited by mitu

                                      @mitu what is the process/are the quality gates to get the script as experimental into RetroPie-Setup repo?

                                      You can submit a PR, IMHO it would be preferable to take into account the available dependencies (newer fluidsynth libraries are not available in the distro) and an optimal configuration needed for each platform (i.e. has anyone tested this on a Pi3). The other Dosbox packages have also a starting script which start timidity for MIDI support, the starting script can maybe leverage that.

                                      I can certainly review it, I think @BuZz already tested it and may have the basis for a new scriptmodule for dosbox-staging.

                                      I see there's a special branch used for building in the Wiki script, are the changes now in the master or stable branch ? What is the upstream maintainers' take on the packaging - is it preferable to ship a release version or build from master/main ?

                                      1 Reply Last reply Reply Quote 0
                                      • N
                                        nemo93
                                        last edited by

                                        @Lolonois thanks for the update! Much appreciated. I do confirm script does work 100%. There might be some (small) adjustments to be made but it's more than ok.

                                        @mitu
                                        some testing still required but the current version of Staging (master branch) might be a nice addition to Retropie. Staging does now come with full built-in GM and MT32 support, SDL2 and many other quality of life improvements. For those not willing to go the "libretro" route then Staging could be a very fine alternative for their Pis.

                                        To your other points: Fluidsynth (GM) and Munt (MT32/CM32) support is built-in meaning no dependencies required. Devs were willing to support only the latest libraries version hence why these are built-in. The default configuration is roughly the same as other forks. Devs are testing on Pi3 and other+@Lolonois+myself on Pi4. My starting script is a very thinned-down version compared to "SVN" given I don't rely on Timidity but solely on Fluidsynth and Munt for MIDI playback.
                                        => Does Timidity come as a mandatory requirement here?

                                        If you or @BuZz already have a scriptmodule (or a PR) for that fork please let me know and I'll be glad to assist.

                                        The branch to go for is definitely master. The special branch you refer to comes with specific parameters and optim especially intended for Pi4. That branch is not ready yet to be merged into master. I'd say it's preferable to build from master but I don't want to step on anyone's shoes here and question will be asked to maintainers directly.

                                        mituM 1 Reply Last reply Reply Quote 0
                                        • mituM
                                          mitu Global Moderator @nemo93
                                          last edited by

                                          @nemo93 said in [DOSbox] official thread:

                                          To your other points: Fluidsynth (GM) and Munt (MT32/CM32) support is built-in meaning no dependencies required. Devs were willing to support only the latest libraries version hence why these are built-in. The default configuration is roughly the same as other forks. Devs are testing on Pi3 and other+@Lolonois+myself on Pi4. My starting script is a very thinned-down version compared to "SVN" given I don't rely on Timidity but solely on Fluidsynth and Munt for MIDI playback.
                                          => Does Timidity come as a mandatory requirement here?

                                          No, Timidity is not mandatory, but we might need some soundfonts installed (and then configured). The .conf that comes with Dosbox right now has the MIDI port configured for Timidity+ALSA, should be replaced/configured with the staging internal MIDI support instead.

                                          The branch to go for is definitely master. The special branch you refer to comes with specific parameters and optim especially intended for Pi4. That branch is not ready yet to be merged into master. I'd say it's preferable to build from master but I don't want to step on anyone's shoes here and question will be asked to maintainers directly.

                                          There are pros and cons to using master vs a release tag.
                                          My preference would be to lock on a release version for a RetroPie scriptmodule. It makes it easier to track new features and the (unavoidable) bug reports would be easier to triage and diagnose when reported against a specific branch or version.

                                          On the other hand, tracking master means new additions (and bugfixes) are easier to test with a simple 'update from source' in RetroPie.

                                          Thanks for chiming in.

                                          N 1 Reply Last reply Reply Quote 0
                                          • N
                                            nemo93 @mitu
                                            last edited by

                                            @mitu thanks to you.

                                            The above makes total sense. After a quick chat with one of the maintainers it might be better to indeed offer users with 2 options. One would be to get a specific tag/release binary whenever the "Install from Binary" is chosen. The other would get user to compile the latest master whenever "Install from Source" is picked up. I believe it's something already in place for other "cores" but I haven't checked recently. Would that be an acceptable solution?

                                            mituM 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

                                            Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.