Ayuda DOSBOX

Buenas!

Estoy intentando cargar Dosbox a traves de Emudeck pero no me muestra el emulador por ningún lado, (instalé varios emus de Dosbox que hay en Discovery) y tengo los juegos en la misma carpeta donde cargo los otros emus que si me detecta.

Tampoco puedo cargar el core de Dosbox en el Retroarch.

¿Alguien ha podido?
@Tearain
Lo mejor es que cambies el emulador por defecto para DOS por Dosbox Pure. Para cambiarlo en emustation tienes que meter una rom en la colección DOS, entrar en emustation y en Menú -> Other settings -> Enable alternative emulators, seleccionas DOS y lo cambias a la segunda opción que es Dosbox Pure.
Aquí tienes unas imágenes de como se cambian los emuladores por defecto en las colecciones.
hilo_emulacion_2451254_s900#p1752718526
La gracia de Dosbox Pure es que puedes usar los juegos como Zip y elimina muchas de las desventajas y problemas de configuración de Dosbox. Es un core específico de Retroarch, y está considerado una revolución en cuanto a emulación de MSDOS, en su video de lanzamientose ven muchas de sus ventajas.
[/quote]


Docs en libretto:
https://docs.libretro.com/library/dosbox_pure/
@JulesRussel ¿Ese viene incluido con Emudeck?
@Goncatin Si, es uno de los cores que vienen en emudeck, creo recordar que no está puesto por defecto en emustation con lo que si lo usas tienes que cambiar el núcleo por defecto para la sección de DOS.
DOSBox Pure tiene muchas mejoras a la hora de montar juegos, instalar Windows y, en general, facilitar el funcionamiento del emulador. Totalmente recomendable. Ahora, que esté más o menos optimizado que el DOSBox standalone ya no lo sé.
Ostras el Xenon 2!!!, joder que nostalgia
Me instale Retroarch de Steam pero no viene el Core del dosbox pure, (tampoco está disponible en la opcción de addons/dlcs)

Sabéis cómo se meten los cores en el Retroarch de Stram?
Tearain escribió:Me instale Retroarch de Steam pero no viene el Core del dosbox pure, (tampoco está disponible en la opcción de addons/dlcs)

Sabéis cómo se meten los cores en el Retroarch de Stram?


Eso quiero saber yo, juegos de msdos es de las cosas que más ganas le tengo.
ivanjmg escribió:
Tearain escribió:Me instale Retroarch de Steam pero no viene el Core del dosbox pure, (tampoco está disponible en la opcción de addons/dlcs)

Sabéis cómo se meten los cores en el Retroarch de Stram?


Eso quiero saber yo, juegos de msdos es de las cosas que más ganas le tengo.


ese sistema ya viene incluido en emudeck 2.0
CISKO escribió:
ivanjmg escribió:
Tearain escribió:Me instale Retroarch de Steam pero no viene el Core del dosbox pure, (tampoco está disponible en la opcción de addons/dlcs)

Sabéis cómo se meten los cores en el Retroarch de Stram?


Eso quiero saber yo, juegos de msdos es de las cosas que más ganas le tengo.


ese sistema ya viene incluido en emudeck 2.0


Gracias, investigaré [oki]
Perdon por el reflote, pero ya que hay este hilo abierto, me parece un buen sitio donde documentarlo. Ya os habreis dado cuenta que en los juegos de Dosbox no suena la música MIDI y solo se oyen los efectos de sonido. Para arreglarlo, solo teneis que seguir los 4 sencillos pasos de esta guía, que aunque sea para Deus Ex, sirve para cualquier otro juego. Comprobado con el Quest for glory Collection y Al-Qadim:

https://steamcommunity.com/sharedfiles/filedetails/?id=2809933598

Get Music Working and Other Fixes
Foreword
Greetings, Hacker.

The game has no music on Steam Deck, because Steam Deck's Linux setup has no MIDI service installed.

So, all we have to do is install one, and then tell Steam to launch it when runnning this game.

Sounds simple right?

It is. I will tell you all of the steps you will need to do.

Time to do some hacking, Hacker.

EDIT: I have updated this guide to use a method that will not be uninstalled when you do a Deck system update. You also will not need to run any terminal commands to install this anymore. This is now a once-and-done solution.
EDIT 2: I have updated this guide to include some info about fixing some other issues the game has on Deck, such as some controller inputs causing the game to stutter or lock up for as long as that input is moved or held.
EDIT 3: I have updated the guide with a new command to put into the game Launch Options, as the previous one stopped working in recent Steam OS versions. If you have used this guide previously, please copy and paste the new Launch Options in Step 4.
1. Install Qsynth, the MIDI engine
There is a MIDI synthesizer available in Discover, which is what we will be using for the game to play its music.

Discover is the 'app store' (though everything is free) that comes on the Steam Deck, which is the preferred way of installing software on Deck that is not through Steam. Installing applications in this way will not be removed when Deck performs a system update.

To use Discover, go to Desktop Mode. Open the Start menu and launch 'Discover'.

Type 'qsynth' into the search, and click the Install button.

Imagen

2. Get a soundfont
Now we have the MIDI music engine, but we need a Soundfont or else it will not make any sounds!

A Soundfont is a file containing all of the instruments that the music will use.

You have many options for soundfonts. Here's a few. Pick one:

Scc1t2.sf2[www.vogonsdrivers.com] - This will make it sound closest to Windows' default MIDI music engine.
WeedsGM4.sf2[bhservices.us] - A bit less lo-fi than the above.
GeneralUser GS v1.471.sf2[schristiancollins.com] - This has way higher fidelity instruments, but also distances itself from the more retro MIDI timbres of the above soundfonts. Download from the 'Current' section.

Go to any of those webpages on your Deck in desktop mode and download the zip. Find the .sf2 file inside (you won't need any other files from any of the zips) and extract it somewhere you will remember. I suggest 'Music' in the deck's Home folder.

Imagen

3. Set up Qsynth
Now that we have Qsynth and a soundfont, we must do some brief setup for Qsynth.

Open the Start menu, go to Multimedia, and run Qsynth.

Imagen

By the default, the volume is very loud and will overpower the game. On the left, turn the Gain knob down to 20 to turn down the volume.

Let's tell Qsynth to load our soundfont.

Press the 'Setup' button on the bottom left.
Then, select the 'Soundfonts' tab.
Press the 'Open...' button on the right.
Navigate to the .sf2 file you downloaded and extracted earlier, and open it.
Now, your soundfont will be loaded into Qsynth.
if you wish to try a different soundfont, press 'Remove', then press 'Open...' to choose a different .sf2 file.

Imagen

Next, we must set up Qsynth to start minimized, so that it will not get in the way of the game.

Go back to the Qsynth main window, and press the 'Options' button in the top right.

Tick the 'Enable system tray icon' checkbox.
Tick the 'Start minimized to system tray' checkbox.

Imagen

Now we are done with Qsynth setup. To test it out quickly, keep Qsynth running, and launch System Shock from Desktop Mode. If you hear music in the main menu, it's working.

Right click the orange drop in the Desktop system tray and 'Exit' to close Qsynth.

In the next section, we will set up Qsynth to automatically launch in Steam Deck's Gaming Mode.

4. Edit game's launch options for Gaming Mode
Now that the MIDI engine and soundfont are installed, we must tell Steam to automatically start Qsynth when launching the game, so that music will work even in Gaming Mode without you having to manually start anything yourself.

In Desktop mode, open your Steam library, right click System Shock: Enhanded Edition, and select Properties.

In the Launch Options field, copy and paste all of this:
LD_PRELOAD=/usr/lib/libcurl.so.4 flatpak run org.rncbc.qsynth & %command% ; killall -9 qsynth

That command looks like a lot of stuff, let me break it down for you if it looks scary.

The first part, the LD_PRELOAD= section tells Steam to override a shared library with a different version when running this game, because the version Steam would use has become incompatible with Flatpak, somehow.

The second part tells Steam to start Qsynth. Since we set up Qsynth to start minimized, you won't see it and it won't get in the way of the game.

The & tells Steam to launch the first part in the background, and then launch the second part.

The next part, %command%, tells Steam it should now launch the game itself (System Shock)

The ; tells Steam to wait until the game exits before executing the last part of the line.

The last part, killall -9 qsynth, tells Steam to automatically close Qsynth upon exiting the game so that it does not continue to use system resources.

5. Fixing Performance Issues
There are 2 files to replace that will generally improve the game performance. One is basically required and the other is simply my suggestion.

SDL2.dll to fix game locking up while using the Deck's controls
SDL2.dll is a library which handles things like inputs and video for the game. Unfortuately, the one that ships with this game has an issue in Proton where certain controls inputs will cause the game to lag or freeze for as long as the input is being pressed or moved.

This can be fixed by replacing SDL2.dll in the game directory with this newer version:

https://www.dropbox.com/s/f8gx6sv8u1gf0o7/SDL2.dll?dl=0

This can also be copied to other games with the same issue, such as Blood: Fresh Supply.


Downgrading the game exe to get 60FPS
The latest patch of SS1:EE locks the game to 30FPS, except for mouselook, which is a strange and jarring stuttery experience. The previous build of the game before that runs fully at 60FPS. The change was apparently to fix the AI having some worse pathfinding at 60FPS, but personally I think the AI issue is so rare or unnoticeable that playing the game at 60FPS is vastly preferable.

To downgrade the game EXE to the version just before latest, replace sekhmet_x64.exe in the game directory with this one.

https://www.dropbox.com/s/wu7vt273j3l5h ... 4.exe?dl=0

6. The End?
Now, if you go back to Gaming Mode and launch the game, you should hear music once you hit the main menu.

By default the music is very loud, I suggest going into the ingame options and turning music down to 50.

Enjoy the game!
Please check out my Deck controller preset "Deck SS2-Esque"! I think it does a good job of boiling down SS1's complex UI into something very usable on a controller, and eliminates a lot of the tedium of picking up items in this game.
<
>


Edito: Nuevo metodo para tener midi con dosbox sin necesidad de instalar un sintetizador midi externo, puesto que al parecer dosbox tiene un sintetizador midi integrado y solo es necesario habilitarlo:

https://www.grois.info/posts/2023-02/2023-02-02-dosbox-with-midi-on-the-steam-deck.xhtml

Dosbox with MIDI on the Steam Deck
Goal of this guide
This guide outlines one way to install DOS games on the Steam Deck. It also explains how to enable a software synthesizer for MIDI music support in those games. Finally, some tips on how one might launch those games conveniently from the Steam Deck's Game Mode are given.

Prerequisites
To follow this guide, you will need to input a lot of text on the Steam Deck. While this is doable with the on-screen keyboard, it's not a convenient experience. I'd therefore strongly suggest to either connect a keyboard to the Deck, or to enable SSH access to the deck. I personally recommend the latter, as it also offers a convenient way to copy files to/from the deck.

SSH access
The first step get SSH working is to enable the SSH server on the Steam Deck. Since the deck is a mobile device and might therefore be used in untrusted networks, I'd strongly suggest to either not have the SSH daemon start up automatically, or to disable password-based logins entirely (of course only after copying your desktop user's public key to the Steam Deck. See either the guide on SSH keys for Linux users, or the guide on SSH keys for PuTTY if you are running Windows).

In order to connect to your Steam Deck, you should be able to use the hostname that you can configure in the Steam Deck settings. I named my deck "grois-steamdeck", and all I have to do to connect to it from my Linux desktop is to run ssh deck@grois-steamdeck on the command line, enter my private key's password, and done. I'd expect the process to be reasonably similar on Windows, using PuTTY.

To copy files you can use (almost) any file manager application on Linux. For instance, file managers using gvfs can just connect using an sftp URL, in my case sftp://deck@grois-steamdeck. I'm not sure if Windows Explorer can access sftp meanwhile, but if not, programs like FileZilla or WinSCP are an adequate option.

Installing DosBOX Staging
I recommend using DosBOX Staging on the Steam Deck. The main reason is its built-in MIDI software synthesizer. Installing a standalone software synthesizer on the Steam Deck is not straightforward, because of its read-only root filesystem. The built-in synthesizer of DosBOX staging makes this unnecessary though.

The easiest way to install DosBOX Staging is to use Discover in Desktop Mode. All you have to do is to search for "DosBOX Staging" and click "Install".

I'm not sure if the configuration files for DosBOX staging get created when installing it, or when it is first launched. It certainly won't hurt to start and quit it though, just to make sure.

Enabling the MIDI software synthesizer
Sound Font
FluidSynth needs a sound font file. You can find a list of sound font files and download links for most of them on the DosBOX Staging WIKI page on MIDI. I personally think that Patch93's SC-55 Soundfont is a good compromise between sound quality and retro feel, but of course that's a matter of taste.

The folder in which the flatpak version of DosBOX Staging searches for Sound Fonts is /home/deck/.var/app/io.github.dosbox-staging/config/dosbox/soundfonts. In case you aren't a seasoned Linux/UNIX user, the . at the beginning of the folder name .var means that this folder is hidden. To see it in Dolphin File Manager, you'll need to enable the display of hidden files/folders therefore.

DosBOX configuration
Now, in order to enable FluidSynth in DosBOX Staging, you'll need to modify the dosbox-staging.conf file. If you are connected over SSH, you can use the nano editor on the command line: nano /home/deck/.var/app/io.github.dosbox-staging/config/dosbox/dosbox-staging.conf. The Steam Deck also comes with the vim editor preinstalled, so if you know how to use it, you can also vim /home/deck/.var/app/io.github.dosbox-staging/config/dosbox/dosbox-staging.conf. Of course you can also just copy the file to your desktop, edit it there with whatever editor you want, and copy it back. The relevant settings are the used MIDI device and the sound font. The MIDI device setting is named mididevice and can be found in the [midi] section. The sound font is configured using the soundfont setting in the [fluidsynth] section.

In my case those settings are (omitting the other fields in the respective categories):

[midi] mididevice = fluidsynth [fluidsynth] soundfont = SC-55.sf2
The sound font can of course also be loaded from a different folder. In that case the full path to the file has to be specified in the dosbox-staging.conf file.

For reference, you can download my current dosbox-staging.conf file

Setting up a DOS game
I'll use The Settlers 2 as an example here, because I have it up and running on my Steam Deck and it's working nicely. The procedure should be reasonably similar for any other DOS game.

The version of Settlers 2 I installed on my deck is from GoG. Their download is packaged for Windows only, but on other operating systems one can unpack it using WINE. I guess with a bit of fiddling one could also unpack it directly on the Steam Deck, but I didn't bother and just launched the installer on my desktop to unpack the files.

Copying the game files to the Steam Deck
As already mentioned under SSH access, on Linux almost any file manager will allow to copy the files over SSH. On Windows you might need a dedicated program to use sftp, see SSH access.

You can put the files wherever you like under the deck user's home folder. I'd pick some easy to remember/find path, because it's going to be needed when adding the game to the Steam Library later.

Game-specific dosbox configuration file
DosBOX Staging uses a layered approach to configuration. This means that one can easily supplement the settings in the global file (the one edited in DosBOX configuration) by a game-specific configuration file.

This comes in handy, because the [autoexec] section can be used to launch the respective game's executable, and other things, like mounting the game's CD. For Settlers 2 for instance, I created a file called "dosbox-siedler2.conf" with the following content:

[sdl]
fullscreen=true
autolock=true

[autoexec]
mount c /home/deck/DosGames/
imgmount d "/home/deck/DosGames/siedler2/settlers2.ins" -t iso -fs iso
c:
cd Siedler2
@VIDEO\SMACKPLY VIDEO\INTRO.SMK
s2
exit

Note that the last line in [autoexec] is exit. This makes sure that DosBOX closes after one quits the game. In that snippet, the mount and imgmount commands are part of DoxBOX and mount the folder with the DOS games as drive C, and the game's CD as drive D. The rest is just regular DOS batch file syntax that launches the SMACKPLY program to play the intro, and then s2 to launch the actual game.

You should now be able to launch the game from the command line: flatpak run io.github.dosbox-staging -- -conf /home/deck/DosGames/siedler2/dosbox-siedler2.conf

Game audio configuration
It might be required to configure the game's audio to get actual sound and MIDI output. Since this is only needed once, I'd just do so in Desktop Mode, and suffer the on-screen keyboard for these few inputs. The exact name of the audio configuration utility depends on the game, so consult the game's manual if unsure. In the case of Settlers 2 the program is called DRIVERS\SETSOUND.EXE in the game's install folder. The commands to run it would therefore be:

mount c /home/deck/DosGames/
c:
cd Siedler2
cd DRIVERS
SETSOUND

Unless you changed the DosBOX settings regarding sound, you should usually be able to use "SoundBlaster" or "SoundBlaster 16" for digital audio, and "General MIDI" for music.

Adding the game to the Steam Library
Launch script
The easiest way to add a DOS game to the Steam Library is to write a short launcher script. I simply named mine "start-s2.sh" and put it into the game's install folder, so I can find it easily. This file can be rather simple: Just a Shebang and the command to launch the game. For instance:

#!/bin/bash flatpak run io.github.dosbox-staging -- -conf /home/deck/DosGames/siedler2/dosbox-siedler2.conf
The script needs to have the "execute" permission set. The command to do that is chmod +x start-s2.sh. Of course you can do that using a graphical file manager too. I'm not sure if any Windows sftp programs allow you to modify the permissions on a file though. Just to be sure it works, it might be worth trying to launch the game from the command line.

Adding the game to the Steam Library
If you now open Steam in Desktop Mode, you can go to the "Games" menu, and click "Add a Non-Steam game to My Library...". Click the "Browse" button at the bottom of the selection window, and navigate the file browser to the folder where you put the launch script. Make sure to select "All Files" for the "File Type", as Steam will not show executables otherwise.

After adding the game, the entry in the library will be named just like the script. This can easily be fixed by right-clicking it, and opening the "Properties" window. The text-box right at the top allows to change the game name.

Setting a grid image
Last, but not least, the game needs some artwork in Steam, to make it recognizable. I recommend the excellent SteamGridDB website, which offers artwork for a lot of games, including many DOS games. They even have a tool to easily set the artworks in Steam, named SGDBoop.

Enjoy the results
Now everything should be up and running, so it's time to enjoy the actual game.
Hola a todos, aprovecho en hilo para realizar una consulta relativa a la configuración de controles.

Desde emustation entró al apartado de juegos de DOS y me los carga bien. Sin embargo, no logró la manera de poder configurar los controles. Ahora mismo juego con ratón usando el táctil de la steam Deck y quiero cambiarlo para usar el joystick izquierdo, como puedo hacerlo?
Hacerlo también de manera que no afecte a la config de otros emuladores que tengo del tipo Megadrive y demás.


Gracias!
Llevo tiempo probando diferentes juegos en Dosbox con un mac, y no me acaba de convencer... por lo complicado y poco intuitivo que es abrir un juego. Lo primero, las teclas no coinciden con los símbolos, y cada vez tienes que acostumbrarte a que los dos puntos son la Ñ, o que el guión es la tecla ?
es un fastidio...
Vale que con msdos hay que cargar los juegos entrando al directorio, etc etc... pero con dosbox lo veo un pastelazo porque antes de nada tienes que montar unidades... un coñazo total.
Y lo peor de todo es el input lag. En todos los juegos que he probado hay un input lag bastante severo, y donde más lo noto es en Mortal Kombat. Para mi, esa versión doméstica es la mejor conversión del juego.. no le encuentro diferencia con la arcade... pero en Dosbox es imposible jugar bien.
Teniendo monitores CRT por VGA... no sería interesante montar un PC antiguo exclusivamente para jugar a juegos de MSDOS? Si pillo un 386 baratuno no me serviría?
No domino mucho el tema de la emulación y no sé si mejor que un PC sería una raspberry con emulación de DOS... ¿hay input lag?
En verdad no sé qué hacer ni qué es mejor opción...
12 respuestas