| Both sides previous revision Previous revision Next revision | Previous revision |
| systems:dos [2021/12/28 10:31] – dosbox pure notes atari | systems:dos [2026/01/24 18:13] (current) – explains dosz suffix crcerror |
|---|
| ==== Quick reference ==== | ==== Quick reference ==== |
| |
| * **Accepted ROM formats:** ''.pc'', ''.dos'', ''.zip'', ''.squashfs'', ''.dosz'' | * **Accepted ROM formats:** ''.pc'', ''.dos'', ''.zip'', ''.squashfs'', ''.dosz'', ''.m3u'', ''.iso'', ''.cue'' |
| * **Folder:** ''/userdata/roms/dos'' | * **Folder:** ''/userdata/roms/dos'' |
| |
| ^ Emulators ^ Accepted ROM formats ^ | ^ Emulators ^ Accepted ROM formats ^ |
| | [[#dosbox|DOSBox]] | ''.pc'', ''.dos'', ''.squashfs'', ''.dosz'' | | | [[#dosbox|DOSBox]] | ''.pc'', ''.dos'', ''.squashfs'', ''.dosz'', ''.m3u'', ''.iso'', ''.cue'' | |
| | [[#dosbox_staging|DOSBox_staging]] | ''.pc'', ''.dos'', ''.squashfs'', ''.dosz'' | | | [[#dosbox_staging|DOSBox_staging]] | ''.pc'', ''.dos'', ''.squashfs'', ''.dosz'', ''.m3u'', ''.iso'', ''.cue'' | |
| | [[#dosbox-x|DOSBox-X]] | ''.pc'', ''.dos'', ''.squashfs'', ''.dosz'' | | | [[#dosbox-x|DOSBox-X]] | ''.pc'', ''.dos'', ''.squashfs'', ''.dosz'', ''.m3u'', ''.iso'', ''.cue'' | |
| | [[#libretro:_dosbox_pure|libretro: DOSBox_Pure]] | ''.pc'', ''.dos'', ''.zip'', ''.squashfs'', ''.dosz'' | | | [[#libretro:_dosbox_pure|libretro: DOSBox_Pure]] | ''.pc'', ''.dos'', ''.zip'', ''.squashfs'', ''.dosz'', ''.m3u'', ''.iso'', ''.cue'' | |
| |
| ===== BIOS ===== | ===== BIOS ===== |
| |
| <WRAP center round tip> | <WRAP center round tip> |
| If intending on using DOSBox_Pure, ''.zip'' files can be renamed to ''.dosz'' (FIXME for fun? Why can you do this? Is it needed in Batocera?) In addition, to mount a ZIP file as the virtual ''A:'' or ''D:'' drive the ''.zip'' file can be renamed to ''.d.zip''. | If intending on using DOSBox_Pure, ''.zip'' files can be renamed to ''.dosz'' (It is a relict from the libretro frontend that wants to load the content of ''.ZIP'' files instead of sending it to DOSBox Pure to load. This was especially useful for CD images in ZIP format which RetroArch refuses to append through its Disc Control menu. So for fun? ... FIXME - yes it is rather a joke because BATOCERA is an advanced launcher where each system is separated and a dependency to a file suffix does not exists). |
| | |
| | In addition, to mount a ZIP file as the virtual ''A:'' or ''D:'' drive the ''.zip'' file can be renamed to ''.d.zip''. |
| </WRAP> | </WRAP> |
| |
| ==== RetroArch ==== | ==== RetroArch ==== |
| |
| [[https://docs.libretro.com/|RetroArch]] (formerly SSNES), is a ubiquitous frontend that can run multiple "cores", which are essentially the emulators themselves. The most common cores use the [[https://www.libretro.com/|libretro]] API, so that's why cores run in RetroArch in Batocera are referred to as "libretro: (core name)". RetroArch aims to unify the feature set of all libretro cores and offer a universal, familiar interface independent of platform. | RetroArch has [[emulators:retroarch|its own page]]. |
| | |
| === RetroArch configuration === | |
| | |
| RetroArch offers a **Quick Menu** accessed by pressing ''[HOTKEY]'' + {{:wiki:south.png?nolink&20|South button (B SNES)}} which can be used to alter various things like [[:advanced_retroarch_settings|RetroArch and core options]], and [[:remapping_controls_per_emulator|controller mapping]]. Most RetroArch related settings can be altered from Batocera's EmulationStation. | |
| | |
| Standardized features available to all libretro cores: ''dos.videomode'', ''dos.ratio'', ''dos.smooth'', ''dos.shaders'', ''dos.pixel_perfect'', ''dos.decoration'', ''dos.game_translation'' | |
| | |
| ^ ES setting name ''batocera.conf_key'' ^ Description => ES option ''key_value'' ^ | |
| ^ Settings that apply to all cores of this emulator || | |
| | **GRAPHICS BACKEND ''dos.gfxbackend''** | Choose your graphics rendering\\ => OpenGL ''opengl'', Vulkan ''vulkan''. | | |
| | **AUDIO LATENCY ''dos.audio_latency''** | Audio latency in milliseconds, turn it up if you hear crackles\\ => 256 ''256'', 192 ''192'', 128 ''128'', 64 ''64'', 32 ''32'', 16 ''16'', 8 ''8''. | | |
| | **THREADED VIDEO ''dos.video_threaded''** | Improves performance at the cost of latency and more video stuttering. Use only if full speed cannot be obtained otherwise.\\ => On ''true'', Off ''false''. | | |
| |
| === libretro: DOSBox_Pure === | === libretro: DOSBox_Pure === |
| |
| Babby's first DOSBox, [[https://github.com/schellingb/dosbox-pure|DOSBox Pure]] aims for simplicity and ease of use. Aims at automating the entire process, including pre-configuring everything you might need for a game such as input mapping and batch script creation. This core doesn't require as much setup as the others do, and leverages RetroArch's functionality in addition to DOSBox's. Notably, when launching a game's folder DOSBox Pure will prompt the user for which executable file to launch, instead of requiring a run command to be typed out manually and saved to a file using external tools. | Noob-friendly DOSBox, [[https://github.com/schellingb/dosbox-pure|DOSBox Pure]] aims for simplicity and ease of use. Aims at automating the entire process, including pre-configuring everything you might need for a game such as input mapping and batch script creation. This core doesn't require as much setup as the others do, and leverages RetroArch's functionality in addition to DOSBox's. Notably, when launching a game's folder DOSBox Pure will prompt the user for which executable file to launch, instead of requiring a run command to be typed out manually and saved to a file using external tools. |
| |
| Because of its automated nature, it can be difficult to handle issues when they arise. If a particular game you have doesn't work with DOSBox Pure, it is recommended to try them on the standalone DOSBox emulators (after properly setting them up for them, of course). | Because of its automated nature, it can be difficult to handle issues when they arise. If a particular game you have doesn't work with DOSBox Pure, it is recommended to try them on the standalone DOSBox emulators (after properly setting them up for them, of course). |
| {{ https://raw.githubusercontent.com/batocera-linux/batocera-controller-overlays/master/solid-4k/dos.png }} | {{ https://raw.githubusercontent.com/batocera-linux/batocera-controller-overlays/master/solid-4k/dos.png }} |
| |
| ==== Troubleshooting ==== | ===== MIDI devices ===== |
| | |
| | DOSBox, DOSBox_Staging and libretro: DOSBox_Pure support MIDI devices natively. However, some extra scripting is needed. |
| | |
| | === Roland UM-ONE USB-Midi Interface === |
| | |
| | The following script needs to be placed at ''/userdata/system/custom.sh'' |
| | |
| | <file custom.sh> |
| | #!/bin/bash |
| | modprobe -a snd-seq snd-seq-device snd-seq-midi snd-seq-midi-event |
| | </file> |
| | |
| | Reboot, and then: |
| | * **For DOSBox and DOSBox_Staging**, add ''%%midiconfig = 20:0%%'' or ''%%midiconfig = 24:0%%'' to your configuration file. |
| | |
| | Example settings for 'DOSBOX SVN' by default located in ''/userdata/system/configs/dosbox.conf'' |
| | <file dosbox.conf> |
| | [midi] |
| | mididevice = alsa |
| | midiconfig = 20:0 |
| | mpu401 = intelligent |
| | </file> |
| | |
| | * **For libretro: DOSBox_Pure**, in-game navigate to **Settings** -> **Audio** -> **MIDI** and the MIDI device should appear. |
| | |
| | DOSBox-X is unfortunately not compatible with this method. |
| | |
| | ===== Troubleshooting ===== |
| |
| ==== Image isn't in the right ratio ==== | ==== Image isn't in the right ratio ==== |