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-X screen size

    Scheduled Pinned Locked Moved Help and Support
    dosbox-xresolutionscreen size
    14 Posts 2 Posters 1.8k 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.
    • T
      TedMaul
      last edited by

      RPi4, running RetroPie 4.8.2.

      I was playing around with DOSBox-X about a year ago and received some great help, but then got waylaid and I haven't looked into it since.

      I have now managed to get it to open with the screen size / position I want by opening Pixel desktop, and then running from a terminal within that, which is fine in a way but I would love to get it running directly from ES.

      When I open it in ES the screen size is HUGE! It can only show the top quarter of the screen and no matter how I change my DOSBox conf file it makes no difference.

      Firstly here is the conf file (WIN98.conf) which is housed in /home/pi:

      [sdl]
      # set fullscreen true if you want to launch in fullscreen mode
      fullscreen=true
      autolock=true
      fullresolution = 1280x720
      output=opengl
      windowresolution=1280x720
      
      [dosbox]
      title=Windows 98
      memsize=512
      cycles=60000
      #cycles=97240
      vesa modelist width limit=0
      vesa modelist height limit=0
      
      [render]
      # aspect ratio correction
      aspect=true
      
      [cpu]
      # pentium_mmx is recommended for Windows 98 installs but causes audio distortion in some games: switch cputype to auto if this occurs
      cputype=pentium_mmx
      core=dynamic_rec
      
      [sblaster]
      sbtype=sb16vibra
      irq=5
      dma=1
      hdma=5
      
      [ne2000]
      # If you want networking in Windows, set ne2000=true.
      # This also requires that you set realnic= to a suitable value for your PC - that should be 1 for Raspberry Pi 4 wlan
      ne2000=true
      nicirq=10
      realnic=1
      
      [fdc, primary]
      int13fakev86io=true
      
      [ide, primary]
      int13fakeio=true
      int13fakev86io=true
      
      [ide, secondary]
      int13fakeio=true
      int13fakev86io=true
      cd-rom insertion delay=4000
      
      [render]
      scaler=none
      
      [autoexec]
      
      

      Secondly, the shell used to launch from ES:

      #!/bin/bash
      /home/pi/dosbox-x/src/dosbox-x -conf "/home/pi/win98.conf"
      

      Thirdly, the emulators.cfg from /opt/retropie/configs/pc (with approx 100 different versions of DOSBox in there... oops)

      dosbox = "bash /home/pi/RetroPie/roms/pc/+Start\ DOSBox.sh %ROM%"
      default = "dosbox"
      dosbox-sdl2 = "bash /home/pi/RetroPie/roms/pc/+Start\ DOSBox-SDL2.sh %ROM%"
      lr-dosbox-pure = "/opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-dosbox-pure/dosbox_pure_libretro.so --config /opt/retropie/configs/pc/retroarch.cfg %ROM%"
      dosbox-x = "XINIT:/home/pi/RetroPie/roms/pc/+DOSBox-X.sh"
      dosbox-staging = "bash /home/pi/RetroPie/roms/pc/+Start\ DOSBox-Staging.sh %ROM%"
      
      

      DOSBox-X itself is SDL2 and also lives in its own folder in /home/pi.

      I don't think I've missed anything out - very grateful in advance for any pointers.

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

        Comment out the options in the [sdl] section and leave only fullscreen=true, see if this resolves the resolution problem.

        T 2 Replies Last reply Reply Quote 0
        • T
          TedMaul @mitu
          last edited by

          @mitu I've just tried it and it stayed the same as before. Weirdly though, when I switched in and out of fullscreen with F12+F it made it somewhat better - still not the same as when done via Pixel / terminal though. Windows 98 loaded clunkily in widescreen (it is 4:3 via Pixel), and seemed to run a fair bit slower too.

          1 Reply Last reply Reply Quote 0
          • T
            TedMaul @mitu
            last edited by

            @mitu I've now stumbled upon some progress (somehow!) - I changed the video mode just after launching in runcommand and now the size / position is exactly what I am after, which is great.

            The only remaining thing now is that I think it is still not launching in X, meaning everything runs quite slowly. I'm not sure if any of the configs I outlined above need changing as a result? Or is there a way of changing the shell to launch from ES to make X open?

            The shell now looks like this:

            #!/bin/bash
            dosbox-x -conf win98.conf
            

            And I amended the emulators.cfg line to this (it still has all the other DOSBoxes there in with it)

            dosbox-x = "XINIT:/home/pi/RetroPie/roms/pc/+DOSBox-X.sh %ROM%"
            
            1 Reply Last reply Reply Quote 0
            • mituM
              mitu Global Moderator
              last edited by

              If the emulator command is prefixed with XINIT:, then the emulator command is started in an X.org session, nothing else is required. You can check by looking at the process list (use pstree from a SSH session).

              T 1 Reply Last reply Reply Quote 0
              • T
                TedMaul @mitu
                last edited by

                @mitu thanks, I'll have a try with the ssh tomorrow and see what it says.

                In the meantime I think I may have ruined something somewhere else - I updated lxde through the retropie-setup option because I wondered if it would update xorg (somehow) and now my previous method of opening dosbox-x through pixel+terminal is now much slower (i.e. unworkable, like it is currently through runcommand).

                Is there anything that this update might have affected, or that I could potentially reverse? Happy to provide any further details if this sounds a little vague, and thanks for your help so far.

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

                  @TedMaul said in DOSBox-X screen size:

                  Is there anything that this update might have affected, or that I could potentially reverse?

                  No idea, but maybe the desktop package upgrades installed the pulseaudio sound server, which may affect performance. Do you have a log file from Dosbox-X (/dev/shm/runcommand.log maybe) ?

                  T 1 Reply Last reply Reply Quote 0
                  • T
                    TedMaul @mitu
                    last edited by

                    @mitu ah, that may be something - since the update it is now coming up with that "mixer elements" error message before launching anything from ES.

                    Here is the runcommand.log from opening DOSBox-X, and then quitting straight away:

                    Parameters: 
                    Executing: SDL1_VIDEODRIVER=dispmanx SDL_DISPMANX_WIDTH=1280 SDL_DISPMANX_HEIGHT=720 bash /home/pi/RetroPie/roms/pc/+Start\ DOSBox.sh "/home/pi/RetroPie/roms/pc/+DOSBox-X.sh"
                    LOG: Early LOG Init complete
                    LOG: Redirected "vesa modelist width limit" from [dosbox] to [video] section
                    LOG: Redirected "vesa modelist height limit" from [dosbox] to [video] section
                    LOG: Migrated realnic from [ne2000] to [ethernet, pcap] section
                    LOG: Set ne2000 backend to pcap during migration
                    LOG: DOSBox-X's working directory: /home/pi
                    LOG: Logging init: beginning logging proper. This is the end of the early init logging
                    LOG: Logging: No logfile was given. All further logging will be discarded.
                    LOG: DOSBox-X version 2022.09.1 (Linux SDL2)
                    LOG: Host keyboard layout is now us (US English)
                    LOG: Mapper keyboard layout is now us (US English)
                    LOG: SDL2 reports desktop display mode 1280 x 720
                    LOG: The default output for the video system: opengl
                    LOG: Configured windowposition: -
                    LOG: SDL: Current window pixel format: SDL_PIXELFORMAT_ARGB8888
                    LOG: Screen report: Method 'None' (-1.000 x -1.000 pixels) at (0.000 x 0.000) (-1.000 x -1.000 mm) (-0.039 x -0.039 in) (-1.000 x -1.000 DPI)
                    LOG: Screen report: Method 'None' (-1.000 x -1.000 pixels) at (0.000 x 0.000) (-1.000 x -1.000 mm) (-0.039 x -0.039 in) (-1.000 x -1.000 DPI)
                    LOG: INFO: switched to full screen mode
                    LOG: ISA BCLK: 8333333.333Hz (25000000/3)
                    LOG: monopal: green, 
                    LOG: Active save slot: 1 [Empty]
                    LOG: USING AVI+ZMBV
                    LOG: Max 1048576 sz 524288
                    LOG: Final 524288
                    LOG: SDLNet_TCP_Open: Couldn't connect to remote host
                    LOG: TiMidity: can't open control connection (host=127.0.0.1, port=7777)
                    fluidsynth: Using PulseAudio driver
                    fluidsynth: warning: Failed to set thread to high priority
                    fluidsynth: warning: Failed to pin the sample data to RAM; swapping is possible.
                    LOG: MIDI:fluidsynth: Loaded SoundFont: /usr/share/sounds/sf2/FluidR3_GM.sf2
                    LOG: MIDI:Opened device:fluidsynth
                    LOG: Pentium CMPXCHG8B emulation is enabled
                    LOG: VOODOO LFB now at d0000000
                    LOG: Serial1: BASE 3f8h
                    LOG: Serial2: BASE 2f8h
                    LOG: Parallel1: BASE 378h
                    LOG: MPU-401 Registering I/O ports as if IBM PC MPU-401 at base 330h
                    LOG: Screen report: Method 'None' (-1.000 x -1.000 pixels) at (0.000 x 0.000) (-1.000 x -1.000 mm) (-0.039 x -0.039 in) (-1.000 x -1.000 DPI)
                    LOG: Allocated APM BIOS pm entry point at f000:ce40
                    LOG: Writing code to fce40
                    LOG: Writing code to fce60
                    LOG: ETHERNET: NE2000 Ethernet emulation backend selected: pcap
                    LOG: Using Network interface:
                    wlan0
                    (no description)
                    LOG: NE2000: Base=0x300 irq=10
                    LOG: Screen report: Method 'None' (-1.000 x -1.000 pixels) at (0.000 x 0.000) (-1.000 x -1.000 mm) (-0.039 x -0.039 in) (-1.000 x -1.000 DPI)
                    LOG: ISA Plug & Play BIOS enabled
                    LOG: VGA ROM BIOS init callback
                    LOG: pixratio 1.000, dw false, dh false
                    LOG: Aspect ratio: 640 x 480  xToY=1.333 yToX=0.750
                    LOG: menuScale=1
                    LOG: Screen report: Method 'None' (-1.000 x -1.000 pixels) at (0.000 x 0.000) (-1.000 x -1.000 mm) (-0.039 x -0.039 in) (-1.000 x -1.000 DPI)
                    LOG: font texture id=2 will make 128 x 256
                    LOG: Screen report: Method 'None' (-1.000 x -1.000 pixels) at (0.000 x 0.000) (-1.000 x -1.000 mm) (-0.039 x -0.039 in) (-1.000 x -1.000 DPI)
                    LOG: WARNING: No translation support (to host) for code page 0
                    LOG:     437687 ERROR BIOS:Keyboard layout file auto not found
                    LOG:     437687 ERROR BIOS:Keyboard layout file auto not found
                    LOG: XMS: 50 handles allocated for use by the DOS environment
                    LOG: EMS page frame at 0xe000-0xefff
                    LOG: COMMAND.COM env size:             720 bytes
                    LOG: COMMAND.COM environment block:    0x0701 sz=0x002d
                    LOG: COMMAND.COM main body (PSP):      0x072f sz=0x009a
                    LOG: COMMAND.COM stack:                0x0749
                    LOG: pixratio 1.350, dw false, dh false
                    LOG: Aspect ratio: 720 x 540  xToY=1.333 yToX=0.750
                    LOG: menuScale=1
                    LOG: Screen report: Method 'None' (-1.000 x -1.000 pixels) at (0.000 x 0.000) (-1.000 x -1.000 mm) (-0.039 x -0.039 in) (-1.000 x -1.000 DPI)
                    LOG: font texture id=2 will make 128 x 256
                    LOG: Screen report: Method 'None' (-1.000 x -1.000 pixels) at (0.000 x 0.000) (-1.000 x -1.000 mm) (-0.039 x -0.039 in) (-1.000 x -1.000 DPI)
                    LOG: INFO: switched to window mode
                    LOG: Aspect ratio: 720 x 540  xToY=1.333 yToX=0.750
                    LOG: menuScale=1
                    LOG: Screen report: Method 'None' (-1.000 x -1.000 pixels) at (0.000 x 0.000) (-1.000 x -1.000 mm) (-0.039 x -0.039 in) (-1.000 x -1.000 DPI)
                    LOG: font texture id=2 will make 128 x 256
                    LOG: Screen report: Method 'None' (-1.000 x -1.000 pixels) at (0.000 x 0.000) (-1.000 x -1.000 mm) (-0.039 x -0.039 in) (-1.000 x -1.000 DPI)
                    
                    
                    1 Reply Last reply Reply Quote 0
                    • mituM
                      mitu Global Moderator
                      last edited by

                      I see in the log that pulseaudio is used for Audio, so yes, I think it's been installed during the update. The Audio section in RetroPie has an option to disable it, but you should also uninstall the PulseAudio panel applet (sudo apt remove lxplug-volumepulse), otherwise starting the Pixel desktop would get your a crashing panel.

                      T 1 Reply Last reply Reply Quote 0
                      • T
                        TedMaul @mitu
                        last edited by

                        @mitu Thanks, I've now purged pulseaudio and removed the panel applet so the error message no longer shows and my sound is no longer messed up (!) Sadly it is still running as slowly in pixel so I think I've perhaps broken something else with the update.

                        I've now ran pstree anyway after opening DOSBox-X to its command line (from ES) and it output this:

                        systemd─┬─alsactl
                                ├─avahi-daemon───avahi-daemon
                                ├─bluetoothd
                                ├─cron
                                ├─cups-browsed───2*[{cups-browsed}]
                                ├─cupsd
                                ├─dbus-daemon
                                ├─dhcpcd
                                ├─hciattach
                                ├─login───bash───bash───emulationstatio───emulationstatio───emulationst+
                                ├─nmbd
                                ├─rngd───3*[{rngd}]
                                ├─rsyslogd───3*[{rsyslogd}]
                                ├─smbd─┬─cleanupd
                                │      ├─lpqd
                                │      └─smbd-notifyd
                                ├─sshd───sshd───sshd───bash───pstree
                                ├─systemd───(sd-pam)
                                ├─systemd-journal
                                ├─systemd-logind
                                ├─systemd-timesyn───{systemd-timesyn}
                                ├─systemd-udevd
                                ├─thd
                                ├─timidity
                                └─2*[wpa_supplicant]
                        

                        For completeness, here is a runcommand.log from the same session when I've tried booting Windows 98: https://pastebin.com/dzUR5iJE

                        T 1 Reply Last reply Reply Quote 0
                        • T
                          TedMaul @TedMaul
                          last edited by

                          As it's been a week or so, just wondering if anyone has any other ideas for this (or can make any sense of the output I posted above) - I'm at a bit of a dead end myself, sadly.

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

                            Not a solution, but have your tried downgrading Dosbox-X (I see you're using 2022.09.1) to an earlier version just to check if things are different ? Or maybe compiling the SDL1 version of it and running it through Pixel ?

                            T 1 Reply Last reply Reply Quote 0
                            • T
                              TedMaul @mitu
                              last edited by

                              @mitu thanks for this, and sorry for the delay - I'll give that a go and report back :-)

                              T 1 Reply Last reply Reply Quote 0
                              • T
                                TedMaul @TedMaul
                                last edited by

                                @mitu I've recompiled it with the SLD1 version and the speed is up again (hooray!) but it doesn't seem to want to output as opengl, so the screen size isn't playing ball again, sadly.

                                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.