mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-11-01 15:43:45 -06:00
Each libretro profile records version_basis and core_version is read there at its pin. snes9x states 1.63 in snes9x.h, nestopia 2.0.0, mgba 0.11.0, vice 3.10, atari800's libretro tree 7.0.0. Cores whose build takes its version from git carry the nearest tag in describe form (flycast v2.7-90-ge88b0ce, ppsspp, duckstation, gearcoleco), placeholders copied from .info files (Git, SVN) are replaced by the code's statement, and a code that states none is null with kind none.
298 lines
11 KiB
YAML
298 lines
11 KiB
YAML
emulator: DOSBox
|
|
type: libretro
|
|
core_classification: community_fork
|
|
source: "https://github.com/libretro/dosbox-libretro"
|
|
upstream: "https://sourceforge.net/projects/dosbox/"
|
|
profiled_date: "2026-10-04"
|
|
source_commit: "a563bb5e9753f207d74e9d8c417d793b784fa4be"
|
|
core_version: "r4494"
|
|
version_basis:
|
|
kind: file
|
|
path: "libretro/svn"
|
|
pattern: '^(r\d+)'
|
|
display_name: "DOS (DOSBox)"
|
|
cores: [dosbox]
|
|
systems: [dos]
|
|
notes: |
|
|
Rebuilt on the dosbox-core tree (DOSBox SVN r4494) with ZIP content and the
|
|
Nuked-SC55 driver. No BIOS. Every file below belongs to a MIDI driver picked
|
|
by the core option, and the default driver is "none".
|
|
ref: libretro/src/libretro_core_options.cpp:1684-1702
|
|
A driver that fails to open is replaced by the first handler that opens.
|
|
ref: src/gui/midi.cpp:241-243
|
|
mt32: mt32.romdir is the system directory. The type option (default cm32l)
|
|
picks CM32L_CONTROL.ROM + CM32L_PCM.ROM or MT32_CONTROL.ROM + MT32_PCM.ROM.
|
|
ref: libretro/src/libretro.cpp:720, src/gui/midi_mt32.cpp:51-68
|
|
MUNT identifies each file by size and SHA1 against its full-ROM list, so
|
|
any full control ROM is accepted under either control name and split
|
|
half-ROMs are refused. The PCM ROM must be the size the control ROM expects.
|
|
ref: libretro/deps/munt/mt32emu/src/ROMInfo.cpp:171-179
|
|
ref: libretro/deps/munt/mt32emu/src/c_interface/c_interface.cpp:425
|
|
ref: libretro/deps/munt/mt32emu/src/Synth.cpp:599
|
|
sc55: the driver is given SC-55.zip from the system directory when that
|
|
file exists, the system directory otherwise.
|
|
ref: libretro/src/libretro.cpp:903-913
|
|
In a directory it looks for SC-55/ROM1.BIN, SC-55/rom1.bin, ROM1.BIN then
|
|
rom1.bin, and opens ROM2, ROM2_ST, ROM_SM and WAVEROM1-3 next to it with the
|
|
same capitalization and extension. In a ZIP the members are assigned by
|
|
size, wave ROMs by the last 1, 2 or 3 in their name. No hash is checked.
|
|
ref: src/gui/midi_sc55.h:43-52, src/gui/midi_sc55.h:98-133
|
|
Byte 67 of ROM1 selects the model and the sizes the other ROMs must have:
|
|
SC-55mkII/SC-55st need ROM_SM, a 2 MiB WAVEROM1 and a 1 MiB WAVEROM2.
|
|
SC-55/SC-155 and CM-300/SCC-1 need a 256 KiB ROM2 and three 1 MiB wave
|
|
ROMs. JV-880 needs a 256 KiB ROM2 and two 2 MiB wave ROMs. SCB-55 needs a
|
|
2 MiB WAVEROM1.
|
|
ref: src/gui/midi_sc55.h:151-175
|
|
fluidsynth and bassmidi: the soundfont option lists the files found in
|
|
soundfonts/ under the system directory (.sf2 for both, .sfz for BASSMIDI,
|
|
.sf3/.dls/.gig for FluidSynth). No file name is fixed.
|
|
ref: libretro/src/libretro.cpp:1673-1689
|
|
bassmidi also loads the BASS and BASSMIDI libraries from the system
|
|
directory.
|
|
ref: libretro/src/midi_bassmidi.cpp:230-258
|
|
Keyboard layouts and codepages are compiled in.
|
|
ref: src/dos/dos_keyboard_layout_data.h, src/dos/dos_codepages.h
|
|
DOSBox.conf in the save directory is read as the configuration when the
|
|
content is not a .conf file.
|
|
ref: libretro/src/libretro.cpp:1777-1782
|
|
|
|
files:
|
|
# -- MT-32 control ROMs (mt32.type = mt32) --
|
|
|
|
- name: "MT32_CONTROL.ROM"
|
|
description: "MT-32 Control v1.04"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 65536
|
|
sha1: "5a5cb5a77d7d55ee69657c2f870416daed52dea7"
|
|
validation: [sha1, size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_mt32.cpp:55, libretro/deps/munt/mt32emu/src/ROMInfo.cpp:58"
|
|
|
|
- name: "MT32_CONTROL.ROM"
|
|
description: "MT-32 Control v1.05"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 65536
|
|
sha1: "e17a3a6d265bf1fa150312061134293d2b58288c"
|
|
validation: [sha1, size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_mt32.cpp:55, libretro/deps/munt/mt32emu/src/ROMInfo.cpp:61"
|
|
|
|
- name: "MT32_CONTROL.ROM"
|
|
description: "MT-32 Control v1.06"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 65536
|
|
sha1: "a553481f4e2794c10cfe597fef154eef0d8257de"
|
|
validation: [sha1, size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_mt32.cpp:55, libretro/deps/munt/mt32emu/src/ROMInfo.cpp:64"
|
|
|
|
- name: "MT32_CONTROL.ROM"
|
|
description: "MT-32 Control v1.07"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 65536
|
|
sha1: "b083518fffb7f66b03c23b7eb4f868e62dc5a987"
|
|
validation: [sha1, size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_mt32.cpp:55, libretro/deps/munt/mt32emu/src/ROMInfo.cpp:67"
|
|
|
|
- name: "MT32_CONTROL.ROM"
|
|
description: "MT-32 Control BlueRidge"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 65536
|
|
sha1: "7b8c2a5ddb42fd0732e2f22b3340dcf5360edf92"
|
|
validation: [sha1, size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_mt32.cpp:55, libretro/deps/munt/mt32emu/src/ROMInfo.cpp:70"
|
|
|
|
- name: "MT32_CONTROL.ROM"
|
|
description: "MT-32 Control v2.04"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 131072
|
|
sha1: "2c16432b6c73dd2a3947cba950a0f4c19d6180eb"
|
|
validation: [sha1, size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_mt32.cpp:55, libretro/deps/munt/mt32emu/src/ROMInfo.cpp:72"
|
|
|
|
- name: "MT32_CONTROL.ROM"
|
|
description: "MT-32 Control v2.06"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 131072
|
|
sha1: "2869cf4c235d671668cfcb62415e2ce8323ad4ed"
|
|
validation: [sha1, size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_mt32.cpp:55, libretro/deps/munt/mt32emu/src/ROMInfo.cpp:73"
|
|
|
|
- name: "MT32_CONTROL.ROM"
|
|
description: "MT-32 Control v2.07"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 131072
|
|
sha1: "47b52adefedaec475c925e54340e37673c11707c"
|
|
validation: [sha1, size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_mt32.cpp:55, libretro/deps/munt/mt32emu/src/ROMInfo.cpp:74"
|
|
|
|
# -- CM-32L control ROMs (mt32.type = cm32l, the default) --
|
|
|
|
- name: "CM32L_CONTROL.ROM"
|
|
description: "CM-32L/LAPC-I Control v1.00"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 65536
|
|
sha1: "73683d585cd6948cc19547942ca0e14a0319456d"
|
|
validation: [sha1, size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_mt32.cpp:53, libretro/deps/munt/mt32emu/src/ROMInfo.cpp:75"
|
|
|
|
- name: "CM32L_CONTROL.ROM"
|
|
description: "CM-32L/LAPC-I Control v1.02"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 65536
|
|
sha1: "a439fbb390da38cada95a7cbb1d6ca199cd66ef8"
|
|
validation: [sha1, size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_mt32.cpp:53, libretro/deps/munt/mt32emu/src/ROMInfo.cpp:76"
|
|
|
|
- name: "CM32L_CONTROL.ROM"
|
|
description: "CM-32LN/CM-500/LAPC-N Control v1.00"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 65536
|
|
sha1: "dc1c5b1b90a4646d00f7daf3679733c7badc7077"
|
|
validation: [sha1, size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_mt32.cpp:53, libretro/deps/munt/mt32emu/src/ROMInfo.cpp:77"
|
|
|
|
# -- PCM ROMs --
|
|
|
|
- name: "MT32_PCM.ROM"
|
|
description: "MT-32 PCM ROM"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 524288
|
|
sha1: "f6b1eebc4b2d200ec6d3d21d51325d5b48c60252"
|
|
validation: [sha1, size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_mt32.cpp:66, libretro/deps/munt/mt32emu/src/ROMInfo.cpp:81"
|
|
|
|
- name: "CM32L_PCM.ROM"
|
|
description: "CM-32L/CM-64/LAPC-I PCM ROM"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 1048576
|
|
sha1: "289cc298ad532b702461bfc738009d9ebe8025ea"
|
|
validation: [sha1, size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_mt32.cpp:64, libretro/deps/munt/mt32emu/src/ROMInfo.cpp:85"
|
|
|
|
# -- Roland SC-55 family ROMs (Nuked-SC55 driver) --
|
|
|
|
- name: "ROM1.BIN"
|
|
path: "SC-55/ROM1.BIN"
|
|
aliases: ["rom1.bin"]
|
|
description: "SC-55 family program ROM 1"
|
|
required: false
|
|
size: 32768
|
|
validation: [size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_sc55.h:98, src/gui/midi_sc55.h:113-115"
|
|
note: "Byte 67 selects the emulated model."
|
|
|
|
- name: "ROM2.BIN"
|
|
path: "SC-55/ROM2.BIN"
|
|
aliases: ["rom2.bin", "ROM2_ST.BIN", "rom2_st.bin"]
|
|
description: "SC-55 family program ROM 2"
|
|
required: false
|
|
size: [262144, 524288]
|
|
validation: [size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_sc55.h:46, src/gui/midi_sc55.h:120, src/gui/midi_sc55.h:135"
|
|
note: "The driver does not open without ROM1 and ROM2. ROM2_ST fills the same slot when ROM2 did not."
|
|
|
|
- name: "ROM_SM.BIN"
|
|
path: "SC-55/ROM_SM.BIN"
|
|
aliases: ["rom_sm.bin"]
|
|
description: "SC-55mkII/SC-55st sub-MCU ROM"
|
|
required: false
|
|
size: 4096
|
|
validation: [size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_sc55.h:47, src/gui/midi_sc55.h:120, src/gui/midi_sc55.h:155"
|
|
|
|
- name: "WAVEROM1.BIN"
|
|
path: "SC-55/WAVEROM1.BIN"
|
|
aliases: ["waverom1.bin"]
|
|
description: "SC-55 family wave ROM 1"
|
|
required: false
|
|
size: [1048576, 2097152]
|
|
validation: [size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_sc55.h:48-50, src/gui/midi_sc55.h:120"
|
|
|
|
- name: "WAVEROM2.BIN"
|
|
path: "SC-55/WAVEROM2.BIN"
|
|
aliases: ["waverom2.bin"]
|
|
description: "SC-55 family wave ROM 2"
|
|
required: false
|
|
size: [1048576, 2097152]
|
|
validation: [size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_sc55.h:48-50, src/gui/midi_sc55.h:120"
|
|
|
|
- name: "WAVEROM3.BIN"
|
|
path: "SC-55/WAVEROM3.BIN"
|
|
aliases: ["waverom3.bin", "sc55_waverom3.bin"]
|
|
description: "SC-55/SC-155/CM-300 wave ROM 3"
|
|
required: false
|
|
size: 1048576
|
|
validation: [size]
|
|
mode: libretro
|
|
source_ref: "src/gui/midi_sc55.h:48-50, src/gui/midi_sc55.h:120, src/gui/midi_sc55.h:155, src/gui/midi_sc55.h:160"
|
|
note: "Next to ROM1.BIN the name is fixed. In SC-55.zip any 1 MiB or 2 MiB member fills the wave slot of the last 1, 2 or 3 in its name, so sc55_waverom3.bin is taken as wave ROM 3. The size test of an SC-55mkII ROM1 does not cover it."
|
|
|
|
# -- BASS libraries (BASSMIDI driver) --
|
|
|
|
- name: "libbass.so"
|
|
description: "BASS library (Linux)"
|
|
required: false
|
|
mode: libretro
|
|
source_ref: "libretro/src/midi_bassmidi.cpp:238, libretro/src/midi_bassmidi.cpp:246"
|
|
|
|
- name: "libbassmidi.so"
|
|
description: "BASSMIDI library (Linux)"
|
|
required: false
|
|
mode: libretro
|
|
source_ref: "libretro/src/midi_bassmidi.cpp:239, libretro/src/midi_bassmidi.cpp:254"
|
|
|
|
- name: "bass.dll"
|
|
description: "BASS library (Windows)"
|
|
required: false
|
|
mode: libretro
|
|
source_ref: "libretro/src/midi_bassmidi.cpp:232, libretro/src/midi_bassmidi.cpp:246"
|
|
|
|
- name: "bassmidi.dll"
|
|
description: "BASSMIDI library (Windows)"
|
|
required: false
|
|
mode: libretro
|
|
source_ref: "libretro/src/midi_bassmidi.cpp:233, libretro/src/midi_bassmidi.cpp:254"
|
|
|
|
- name: "libbass.dylib"
|
|
description: "BASS library (macOS)"
|
|
required: false
|
|
mode: libretro
|
|
source_ref: "libretro/src/midi_bassmidi.cpp:235, libretro/src/midi_bassmidi.cpp:246"
|
|
|
|
- name: "libbassmidi.dylib"
|
|
description: "BASSMIDI library (macOS)"
|
|
required: false
|
|
mode: libretro
|
|
source_ref: "libretro/src/midi_bassmidi.cpp:236, libretro/src/midi_bassmidi.cpp:254"
|