Recalbox Forum

    • Register
    • Login
    • Search
    • Recent
    • Tags
    • recalbox.com
    • Gitlab repository
    • Documentation
    • Discord

    Strange error in Dosbox

    Emulateurs Arcade/PC/Console
    strange dosbox
    3
    62
    15102
    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.
    • voljega
      voljega Banned @lmerckx last edited by

      @lmerckx RPI3 for me too

      1 Reply Last reply Reply Quote 0
      • Dragu
        Dragu Banned last edited by

        @lmerckx
        @voljega
        Could this be a possible explication for the volume size increase, that the 2018 build is the 64-bit version and not the 32 ?

        1 Reply Last reply Reply Quote 0
        • lmerckx
          lmerckx last edited by lmerckx

          @Dragu @voljega
          Back home ...

          I've just tested my DosBox RPI2 (updated to 18.03.30) and I confirm: I have no lag problem on games Wolfenstein 3D, Epic Pinball, Ultima 7.
          The size of my dosbox is 5046488.

          Can you send a support archive ?

          Edit: Now, I can reproduce the /usr/share/dosbox bug ! I've never tested without dosbox.bat, in fact.
          I look for a correction.
          Still no idea for lags.

          Recalbox 9.1 on RPI 4, SSD 250Gb, 2 Logitech F710, Nespi4case
          Contributions for DosBox, ScummVM, ResidualVM, Daphne (Hypseus)

          1 Reply Last reply Reply Quote 0
          • lmerckx
            lmerckx last edited by

            @Dragu Mine is still 32 bits.
            Here is the result of the "file dosbox" command, launched from another Linux workstation:
            dosbox: ELF 32-bit LSB executable, ARM, EABI5 version 1 (GNU/Linux), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, for GNU/Linux 4.4.0, stripped

            Recalbox 9.1 on RPI 4, SSD 250Gb, 2 Logitech F710, Nespi4case
            Contributions for DosBox, ScummVM, ResidualVM, Daphne (Hypseus)

            voljega 1 Reply Last reply Reply Quote 0
            • voljega
              voljega Banned @lmerckx last edited by voljega

              @lmerckx doesn't work in recalbox for me : # file dosbox -sh: file: command not found

              tried Epic Pinball, lags horribly too :s

              @lmerckx do you have a RPI3 ?

              1 Reply Last reply Reply Quote 0
              • lmerckx
                lmerckx last edited by

                @voljega Yes, I had to transfered my dosbox exec to another Linux workstation to get "file" command.
                I have a RPI2.

                Do you also launch games with autoexec or with a dosbox.bat script ?

                Recalbox 9.1 on RPI 4, SSD 250Gb, 2 Logitech F710, Nespi4case
                Contributions for DosBox, ScummVM, ResidualVM, Daphne (Hypseus)

                voljega 1 Reply Last reply Reply Quote 0
                • lmerckx
                  lmerckx last edited by

                  @dragu So, I think I have solved the "/usr/share/dosbox" problem:
                  When there is no dosbox.bat file in directory, DosBox scan other parameters to find a valid file to execute or directory to mount. When it find the share directory, it stops and go on with it.
                  It explains why I had no problem. I always use the dosbox.bat file.

                  So, the solution was to put the initialization of the virtual keyboard before the autoexec startup.

                  But, I'm curious, how do you configure your autoexec ?
                  Do you need to specify the mount and exit in it ?
                  Do you have an example ?

                  Recalbox 9.1 on RPI 4, SSD 250Gb, 2 Logitech F710, Nespi4case
                  Contributions for DosBox, ScummVM, ResidualVM, Daphne (Hypseus)

                  1 Reply Last reply Reply Quote 0
                  • voljega
                    voljega Banned @lmerckx last edited by voljega

                    @lmerckx said in Strange error in Dosbox:

                    s**t I f you don't have a rpi3, it's not gonna be easy to find the issue ...

                    Do you also launch games with autoexec or with a dosbox.bat script ?

                    I always use a dosbox.bat with all necessary instructions in it (mount for instance but no need for exit), I keep no command at all in dosbox.cfg (I always have one too)
                    If you need, I can give you my dosbox.bat and dosbox.cfg for Epic Pinball

                    @lmerckx said in Strange error in Dosbox:

                    Yes, I had to transfered my dosbox exec to another Linux workstation to get "file" command.

                    figured as much, but I don't have any linux at home other than my recalbox ...

                    1 Reply Last reply Reply Quote 0
                    • Dragu
                      Dragu Banned last edited by

                      @lmerckx
                      In general I have always an dosbox.bat file to start games, and mostly the mount operations I make at the end of dosbox.cfg. But this is just personal choice and no issue.
                      I found the story with the VK at testing a game. Because, if you start with dosbox.bat and have an error, you will never see it 🙂 Screen erase instantly.
                      I for this reason sometimes start a game with no dosbox.bat, for debugging.
                      Concerning the speed lag, it is in relation important 1/2 as before if not less.
                      What is surprising that you have with the PI2 no problems, but we with PI3 have.
                      So, I think solution between both build. 🙂

                      1 Reply Last reply Reply Quote 0
                      • Dragu
                        Dragu Banned last edited by

                        @lmerckx
                        I have another idea. Would it be possible to upload somewhere your version of PI2, to test with PI3 ?

                        1 Reply Last reply Reply Quote 0
                        • lmerckx
                          lmerckx last edited by

                          @Dragu Good idea. The link is here: https://www.proximuscloud.be/web/app/share/invite/HLQ1C8rABR
                          If it doesn't work with it ... can you send me your configuration file. Perhaps, is it a change I made which still allow to get good performance.

                          Recalbox 9.1 on RPI 4, SSD 250Gb, 2 Logitech F710, Nespi4case
                          Contributions for DosBox, ScummVM, ResidualVM, Daphne (Hypseus)

                          1 Reply Last reply Reply Quote 0
                          • Dragu
                            Dragu Banned last edited by

                            @lmerckx
                            I think it was not so brillant as idea, as the file is not executable under PI3. I dont know the reason and expected downward compatibility, what is not the case. So, this will unfortunately not help us.

                            1 Reply Last reply Reply Quote 0
                            • lmerckx
                              lmerckx last edited by

                              @Dragu Sh... Can you send me your confiuration file anyway ?

                              Recalbox 9.1 on RPI 4, SSD 250Gb, 2 Logitech F710, Nespi4case
                              Contributions for DosBox, ScummVM, ResidualVM, Daphne (Hypseus)

                              1 Reply Last reply Reply Quote 0
                              • voljega
                                voljega Banned last edited by

                                keeps getting stranger and stranger !

                                1 Reply Last reply Reply Quote 0
                                • Dragu
                                  Dragu Banned last edited by

                                  @lmerckx
                                  Sure, but they are not all the same :

                                  # This is the configuration file for DOSBox 0.74. (Please use the latest version of DOSBox)
                                  # Lines starting with a # are comment lines and are ignored by DOSBox.
                                  # They are used to (briefly) document the effect of each option.
                                  
                                  [sdl]
                                  #       fullscreen: Start dosbox directly in fullscreen. (Press ALT-Enter to go back)
                                  #            vsync: Sync to Vblank IF supported by the output device and renderer (if relevant).
                                  #                   It can reduce screen flickering, but it can also result in a slow DOSBox.
                                  #   fullresolution: What resolution to use for fullscreen: original, desktop or a fixed size (e.g. 1024x768).
                                  #                     Using your monitor's native resolution with aspect=true might give the best results.
                                  #                     If you end up with small window on a large screen, try an output different from surface.
                                  # windowresolution: Scale the window to this size IF the output device supports hardware scaling.
                                  #                     (output=surface does not!)
                                  #           output: What video system to use for output.
                                  #                   Possible values: surface, texture, texturenb.
                                  #         renderer: Choose a renderer driver if output=texture or output=texturenb. Use output=auto for an automatic choice.
                                  #                   Possible values: auto, opengl, software.
                                  #         autolock: Mouse will automatically lock, if you click on the screen. (Press CTRL-F10 to unlock)
                                  #      sensitivity: Mouse sensitivity.
                                  #      waitonerror: Wait before closing the console if dosbox has an error.
                                  #         priority: Priority levels for dosbox. Second entry behind the comma is for when dosbox is not focused/minimized.
                                  #                     pause is only valid for the second entry.
                                  #                   Possible values: lowest, lower, normal, higher, highest, pause.
                                  #       mapperfile: File used to load/save the key/event mappings from. Resetmapper only works with the default value.
                                  
                                  fullscreen=true
                                  vsync=false
                                  fullresolution=desktop
                                  windowresolution=original
                                  output=texture
                                  renderer=auto
                                  autolock=true
                                  sensitivity=100
                                  waitonerror=true
                                  priority=higher,normal
                                  mapperfile=nremorse.map
                                  
                                  [dosbox]
                                  # language: Select another language file.
                                  #  machine: The type of machine DOSBox tries to emulate.
                                  #           Possible values: hercules, cga, tandy, pcjr, ega, vgaonly, svga_s3, svga_et3000, svga_et4000, svga_paradise, vesa_nolfb, vesa_oldvbe.
                                  # captures: Directory where things like wave, midi, screenshot get captured.
                                  #  memsize: Amount of memory DOSBox has in megabytes.
                                  #             This value is best left at its default to avoid problems with some games,
                                  #             though few games might require a higher value.
                                  #             There is generally no speed advantage when raising this value.
                                  
                                  language=
                                  machine=svga_s3
                                  captures=capture
                                  memsize=16
                                  
                                  [render]
                                  # frameskip: How many frames DOSBox skips before drawing one.
                                  #    aspect: Do aspect correction, if your output method doesn't support scaling this can slow things down!.
                                  #    scaler: Scaler used to enlarge/enhance low resolution modes. If 'forced' is appended,
                                  #            then the scaler will be used even if the result might not be desired.
                                  #            Possible values: none, normal2x, normal3x, advmame2x, advmame3x, advinterp2x, advinterp3x, hq2x, hq3x, 2xsai, super2xsai, supereagle, tv2x, tv3x, rgb2x, rgb3x, scan2x, scan3x.
                                  
                                  frameskip=0
                                  aspect=false
                                  scaler=none
                                  
                                  [cpu]
                                  #      core: CPU Core used in emulation. auto will switch to dynamic if available and
                                  #            appropriate.
                                  #            Possible values: auto, dynamic, normal, simple.
                                  #   cputype: CPU Type used in emulation. auto is the fastest choice.
                                  #            Possible values: auto, 386, 386_slow, 486_slow, pentium_slow, 386_prefetch.
                                  #    cycles: Amount of instructions DOSBox tries to emulate each millisecond.
                                  #            Setting this value too high results in sound dropouts and lags.
                                  #            Cycles can be set in 3 ways:
                                  #              'auto'          tries to guess what a game needs.
                                  #                              It usually works, but can fail for certain games.
                                  #              'fixed #number' will set a fixed amount of cycles. This is what you usually
                                  #                              need if 'auto' fails (Example: fixed 4000).
                                  #              'max'           will allocate as much cycles as your computer is able to
                                  #                              handle.
                                  #            Possible values: auto, fixed, max.
                                  #   cycleup: Amount of cycles to decrease/increase with keycombos.(CTRL-F11/CTRL-F12)
                                  # cycledown: Setting it lower than 100 will be a percentage.
                                  
                                  core=dynamic
                                  cputype=auto
                                  cycles=max
                                  cycleup=100
                                  cycledown=100
                                  
                                  [mixer]
                                  #   nosound: Enable silent mode, sound is still emulated though.
                                  #      rate: Mixer sample rate, setting any device's rate higher than this will probably lower their sound quality.
                                  #            Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
                                  # blocksize: Mixer block size, larger blocks might help sound stuttering but sound will also be more lagged.
                                  #            Possible values: 1024, 2048, 4096, 8192, 512, 256.
                                  # prebuffer: How many milliseconds of data to keep on top of the blocksize.
                                  
                                  nosound=false
                                  rate=44100
                                  blocksize=1024
                                  prebuffer=20
                                  
                                  [midi]
                                  #     mpu401: Type of MPU-401 to emulate.
                                  #             Possible values: intelligent, uart, none.
                                  # mididevice: Device that will receive the MIDI data from MPU-401.
                                  #             Possible values: default, win32, alsa, oss, coreaudio, coremidi, none.
                                  # midiconfig: Special configuration options for the device driver. This is usually the id of the device you want to use.
                                  #               or in the case of coreaudio, you can specify a soundfont here.
                                  #               When using a Roland MT-32 rev. 0 as midi output device, some games may require a delay in order to prevent 'buffer overflow' issues.
                                  #               In that case, add 'delaysysex', for example: midiconfig=2 delaysysex
                                  #               See the README/Manual for more details.
                                  
                                  mpu401=intelligent
                                  mididevice=default
                                  midiconfig=
                                  
                                  [sblaster]
                                  #  sbtype: Type of Soundblaster to emulate. gb is Gameblaster.
                                  #          Possible values: sb1, sb2, sbpro1, sbpro2, sb16, gb, none.
                                  #  sbbase: The IO address of the soundblaster.
                                  #          Possible values: 220, 240, 260, 280, 2a0, 2c0, 2e0, 300.
                                  #     irq: The IRQ number of the soundblaster.
                                  #          Possible values: 7, 5, 3, 9, 10, 11, 12.
                                  #     dma: The DMA number of the soundblaster.
                                  #          Possible values: 1, 5, 0, 3, 6, 7.
                                  #    hdma: The High DMA number of the soundblaster.
                                  #          Possible values: 1, 5, 0, 3, 6, 7.
                                  # sbmixer: Allow the soundblaster mixer to modify the DOSBox mixer.
                                  # oplmode: Type of OPL emulation. On 'auto' the mode is determined by sblaster type. All OPL modes are Adlib-compatible, except for 'cms'.
                                  #          Possible values: auto, cms, opl2, dualopl2, opl3, opl3gold, none.
                                  #  oplemu: Provider for the OPL emulation. compat might provide better quality (see oplrate as well).
                                  #          Possible values: default, compat, fast.
                                  # oplrate: Sample rate of OPL music emulation. Use 49716 for highest quality (set the mixer rate accordingly).
                                  #          Possible values: 44100, 49716, 48000, 32000, 22050, 16000, 11025, 8000.
                                  
                                  sbtype=sb16
                                  sbbase=220
                                  irq=7
                                  dma=1
                                  hdma=5
                                  sbmixer=true
                                  oplmode=auto
                                  oplemu=default
                                  oplrate=44100
                                  
                                  [gus]
                                  #      gus: Enable the Gravis Ultrasound emulation.
                                  #  gusrate: Sample rate of Ultrasound emulation.
                                  #           Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
                                  #  gusbase: The IO base address of the Gravis Ultrasound.
                                  #           Possible values: 240, 220, 260, 280, 2a0, 2c0, 2e0, 300.
                                  #   gusirq: The IRQ number of the Gravis Ultrasound.
                                  #           Possible values: 5, 3, 7, 9, 10, 11, 12.
                                  #   gusdma: The DMA channel of the Gravis Ultrasound.
                                  #           Possible values: 3, 0, 1, 5, 6, 7.
                                  # ultradir: Path to Ultrasound directory. In this directory
                                  #           there should be a MIDI directory that contains
                                  #           the patch files for GUS playback. Patch sets used
                                  #           with Timidity should work fine.
                                  
                                  gus=false
                                  gusrate=44100
                                  gusbase=240
                                  gusirq=5
                                  gusdma=3
                                  ultradir=C:\ULTRASND
                                  
                                  [speaker]
                                  # pcspeaker: Enable PC-Speaker emulation.
                                  #    pcrate: Sample rate of the PC-Speaker sound generation.
                                  #            Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
                                  #     tandy: Enable Tandy Sound System emulation. For 'auto', emulation is present only if machine is set to 'tandy'.
                                  #            Possible values: auto, on, off.
                                  # tandyrate: Sample rate of the Tandy 3-Voice generation.
                                  #            Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
                                  #    disney: Enable Disney Sound Source emulation. (Covox Voice Master and Speech Thing compatible).
                                  
                                  pcspeaker=true
                                  pcrate=44100
                                  tandy=auto
                                  tandyrate=44100
                                  disney=true
                                  
                                  [joystick]
                                  # joysticktype: Type of joystick to emulate: auto (default), none,
                                  #               2axis (supports two joysticks),
                                  #               4axis (supports one joystick, first joystick used),
                                  #               4axis_2 (supports one joystick, second joystick used),
                                  #               fcs (Thrustmaster), ch (CH Flightstick).
                                  #               none disables joystick emulation.
                                  #               auto chooses emulation depending on real joystick(s).
                                  #               (Remember to reset dosbox's mapperfile if you saved it earlier)
                                  #               Possible values: auto, 2axis, 4axis, 4axis_2, fcs, ch, none.
                                  #        timed: enable timed intervals for axis. Experiment with this option, if your joystick drifts (away).
                                  #     autofire: continuously fires as long as you keep the button pressed.
                                  #       swap34: swap the 3rd and the 4th axis. can be useful for certain joysticks.
                                  #   buttonwrap: enable button wrapping at the number of emulated buttons.
                                  
                                  joysticktype=auto
                                  timed=true
                                  autofire=false
                                  swap34=false
                                  buttonwrap=false
                                  
                                  [serial]
                                  # serial1: set type of device connected to com port.
                                  #          Can be disabled, dummy, modem, nullmodem, directserial.
                                  #          Additional parameters must be in the same line in the form of
                                  #          parameter:value. Parameter for all types is irq (optional).
                                  #          for directserial: realport (required), rxdelay (optional).
                                  #                           (realport:COM1 realport:ttyS0).
                                  #          for modem: listenport (optional).
                                  #          for nullmodem: server, rxdelay, txdelay, telnet, usedtr,
                                  #                         transparent, port, inhsocket (all optional).
                                  #          Example: serial1=modem listenport:5000
                                  #          Possible values: dummy, disabled, modem, nullmodem, directserial.
                                  # serial2: see serial1
                                  #          Possible values: dummy, disabled, modem, nullmodem, directserial.
                                  # serial3: see serial1
                                  #          Possible values: dummy, disabled, modem, nullmodem, directserial.
                                  # serial4: see serial1
                                  #          Possible values: dummy, disabled, modem, nullmodem, directserial.
                                  
                                  serial1=dummy
                                  serial2=dummy
                                  serial3=disabled
                                  serial4=disabled
                                  
                                  [dos]
                                  #            xms: Enable XMS support.
                                  #            ems: Enable EMS support. The default (=true) provides the best
                                  #                 compatibility but certain applications may run better with
                                  #                 other choices, or require EMS support to be disabled (=false)
                                  #                 to work at all.
                                  #                 Possible values: true, emsboard, emm386, false.
                                  #            umb: Enable UMB support.
                                  # keyboardlayout: Language code of the keyboard layout (or none).
                                  
                                  xms=true
                                  ems=true
                                  umb=true
                                  keyboardlayout=de129
                                  
                                  [autoexec]
                                  # Lines in this section will be run at startup.
                                  # You can put your MOUNT lines here.
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • lmerckx
                                    lmerckx last edited by

                                    @Dragu The only difference between yours and my standard one is the
                                    cycles=max

                                    I prefer now auto for most games. But, I'm pretty sure this is not the cause of the problem.

                                    Recalbox 9.1 on RPI 4, SSD 250Gb, 2 Logitech F710, Nespi4case
                                    Contributions for DosBox, ScummVM, ResidualVM, Daphne (Hypseus)

                                    1 Reply Last reply Reply Quote 0
                                    • Dragu
                                      Dragu Banned last edited by

                                      @lmerckx
                                      I just rolled back, as I have a few versions in usr/bin, easy with rm and cp.
                                      But there is no effect as you expected.

                                      1 Reply Last reply Reply Quote 0
                                      • lmerckx
                                        lmerckx last edited by

                                        @dragu "The truth is elsewhere"
                                        Can I use you as tester ? Because I'm blind without RPI3.

                                        I will first compile a previous version (17.12.01?) of the code in current environment to detect where the problem could be.
                                        If it's still lagging, it could be a problem in "inherited" compilation directive.

                                        Recalbox 9.1 on RPI 4, SSD 250Gb, 2 Logitech F710, Nespi4case
                                        Contributions for DosBox, ScummVM, ResidualVM, Daphne (Hypseus)

                                        voljega 1 Reply Last reply Reply Quote 0
                                        • voljega
                                          voljega Banned @lmerckx last edited by

                                          @lmerckx I can help too, if there's no need to switch on a dev update branch 😛

                                          1 Reply Last reply Reply Quote 0
                                          • lmerckx
                                            lmerckx last edited by

                                            @voljega Thank you too. For a simple test, it will be preferable to simply update the dosbox executable.
                                            Perhaps a first version available this evening.

                                            Recalbox 9.1 on RPI 4, SSD 250Gb, 2 Logitech F710, Nespi4case
                                            Contributions for DosBox, ScummVM, ResidualVM, Daphne (Hypseus)

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

                                            Want to support us ?

                                            78
                                            Online

                                            99.6k
                                            Users

                                            28.1k
                                            Topics

                                            187.1k
                                            Posts

                                            Copyright © 2021 recalbox.com