Skip to content

Rust-DOS - RetroBIOS

Type standalone + libretro
Classification Official ports
Source https://git.libretro.com/libretro/rust-dos
Upstream https://github.com/dividebysandwich/rust-dos
Version 1.3.0
Profiled 2026-10-04
Cores rust_dos
Systems dos
Technical notes

Rust-DOS is an x86 DOS emulator written in Rust by dividebysandwich, with a built-in DOS, BIOS, XMS, EMS, DPMI host and software MIDI (OPL3). The README states "no DOS or BIOS images needed" and the libretro core declares supports_no_game = "true" with no firmware entries (libretro/rust_dos_libretro.info).

Three optional firmware families serve games written for specific sound hardware. None is needed with the default settings.

  • AWE32 sample ROM (awe32.raw): the Creative Sound Blaster AWE32's 1 MB sample ROM. src/awe32/rom.rs:13-17 declares FILE_NAME and the SHA-256 the built-in download has to match (src/awe32/rom.rs:88-93). A file found on disk is only checked for its length, 1 MB or the two bytes shorter AWE-DUMP image (src/awe32/rom.rs:68-71). Without it, the EMU8000 synth still plays what programs load into its sample RAM but ROM sounds are silent (src/awe32/rom.rs:4-6, src/sound.rs:26-38).

  • Roland Sound Canvas ROMs: a Rust port of Nuked-SC55 covers the SC-55, SC-55mkII, SC-55ST, CM-300/SCC-1, SCB-55, RLP-3237, SC-155 and SC-155mkII. src/sc55/rom.rs:143-295 lists 14 romsets of 3 to 5 ROM files, each identified by the SHA-256 of its contents whatever the file is called. The search covers sc55-roms/ and soundcanvas-roms/ with their subfolders and zip archives (src/sc55/rom.rs:352-362). The settings window can download eight of the sets from the Internet Archive item roland-sc-55-series-roms into sc55-roms/<set name>/ (src/sc55/download.rs:12-24, 39, 63-82). With midisynth=sc55 and no complete set, the MPU-401 gets no synthesizer and a warning is logged (src/sc55/mod.rs:112-122, src/sound.rs:99-106).

  • Roland MT-32 ROMs: played by munt (libmt32emu) loaded at runtime (src/mt32.rs:1-6). munt identifies the ROMs from their contents; rust-dos declares no hashes and picks a control and PCM pair by munt's ids (src/mt32.rs:254-278). Without them (or without libmt32emu on the host), midisynth=mt32 fails with a warning and the MPU-401 gets no synthesizer (src/sound.rs:94-98).

The libretro frontend adds its system directory and the rust-dos folder in it to the AWE32 and Sound Canvas search paths (libretro/src/core.rs:148-157).

32 files | 0 required, 32 optional | 28 in repo, 0 missing, 4 unsourceable

awe32.raw optional in repo
Creative Sound Blaster AWE32 sample ROM for the EMU8000 synth

  • System: dos
  • Size: 1.0 MB
  • SHA256: 4e143b94f758...
  • Validation: size
  • Source: src/awe32/rom.rs:13, src/awe32/rom.rs:16-17, src/awe32/rom.rs:68-71, src/awe32/rom.rs:88-93

sc55-roms/mk1-v1.21/rom1.bin optional in repo
Roland SC-55 v1.21 program ROM 1 (H8/532 code), auto-preferred set

  • System: dos
  • SHA256: 7e1bacd1d7c6...
  • Validation: sha256
  • Source: src/sc55/rom.rs:214, src/sc55/rom.rs:299

sc55-roms/mk1-v1.21/rom2.bin optional in repo
Roland SC-55 v1.21 program ROM 2

  • System: dos
  • SHA256: effc6132d68f...
  • Validation: sha256
  • Source: src/sc55/rom.rs:215

sc55-roms/mk1-v1.21/wave1.bin optional in repo
Roland SC-55 Wave1 PCM (shared across all SC-55 mk1 versions and SC-155)

  • System: dos
  • SHA256: 5655509a5318...
  • Validation: sha256
  • Source: src/sc55/rom.rs:135, src/sc55/rom.rs:216

sc55-roms/mk1-v1.21/wave2.bin optional in repo
Roland SC-55 Wave2 PCM

  • System: dos
  • SHA256: c655b159792d...
  • Validation: sha256
  • Source: src/sc55/rom.rs:136, src/sc55/rom.rs:217

sc55-roms/mk1-v1.21/wave3.bin optional in repo
Roland SC-55 Wave3 PCM

  • System: dos
  • SHA256: 334b2d16be3c...
  • Validation: sha256
  • Source: src/sc55/rom.rs:137, src/sc55/rom.rs:218

sc55-roms/mk1-v1.00/rom1.bin optional in repo
Roland SC-55 v1.00 program ROM 1

  • System: dos
  • SHA256: b4ecf44bc052...
  • Validation: sha256
  • Source: src/sc55/rom.rs:181

sc55-roms/mk1-v1.00/rom2.bin optional in repo
Roland SC-55 v1.00 program ROM 2

  • System: dos
  • SHA256: 014e2e21ea30...
  • Validation: sha256
  • Source: src/sc55/rom.rs:182

sc55-roms/mk1-v1.10/rom1.bin optional in repo
Roland SC-55 v1.10 program ROM 1

  • System: dos
  • SHA256: 2fe88ec39f3e...
  • Validation: sha256
  • Source: src/sc55/rom.rs:192

sc55-roms/mk1-v1.10/rom2.bin optional in repo
Roland SC-55 v1.10 program ROM 2

  • System: dos
  • SHA256: ec064d6c4fc7...
  • Validation: sha256
  • Source: src/sc55/rom.rs:193

sc55-roms/mk1-v1.20/rom1.bin optional in repo
Roland SC-55 v1.20 program ROM 1 (same bytes as v1.21 ROM1)

  • System: dos
  • SHA256: 7e1bacd1d7c6...
  • Validation: sha256
  • Source: src/sc55/rom.rs:203

sc55-roms/mk1-v1.20/rom2.bin optional in repo
Roland SC-55 v1.20 program ROM 2

  • System: dos
  • SHA256: 22ce6ca59e63...
  • Validation: sha256
  • Source: src/sc55/rom.rs:204

sc55-roms/mk1-v2.00/rom1.bin optional in repo
Roland SC-55 v2.00 program ROM 1 (shared with SC-155-rev1)

  • System: dos
  • SHA256: 24a65c97cdba...
  • Validation: sha256
  • Source: src/sc55/rom.rs:225

sc55-roms/mk1-v2.00/rom2.bin optional in repo
Roland SC-55 v2.00 program ROM 2

  • System: dos
  • SHA256: f5dac35d450a...
  • Validation: sha256
  • Source: src/sc55/rom.rs:226

sc55-roms/mk2-v1.01/rom1.bin optional in repo
Roland SC-55mkII v1.01 H8/532 ROM 1 (shared with SC-55ST and SC-155mkII)

  • System: dos
  • SHA256: 8a1eb33c7599...
  • Validation: sha256
  • Source: src/sc55/rom.rs:131, src/sc55/rom.rs:148

sc55-roms/mk2-v1.01/rom2.bin optional in repo
Roland SC-55mkII v1.01 program ROM 2 (shared with SC-155mkII)

  • System: dos
  • SHA256: a4c9fd821059...
  • Validation: sha256
  • Source: src/sc55/rom.rs:149

sc55-roms/mk2-v1.01/smrom.bin optional in repo
Roland SC-55mkII sub-MCU (M37450) ROM (shared with SC-55ST and SC-155mkII)

  • System: dos
  • SHA256: b0b5f865a403...
  • Validation: sha256
  • Source: src/sc55/rom.rs:132, src/sc55/rom.rs:150

sc55-roms/mk2-v1.01/wave1.bin optional in repo
Roland SC-55mkII Wave1 PCM (shared with SC-55ST, SC-155mkII, SCB-55)

  • System: dos
  • SHA256: c6429e21b9b3...
  • Validation: sha256
  • Source: src/sc55/rom.rs:133, src/sc55/rom.rs:151

sc55-roms/mk2-v1.01/wave2.bin optional in repo
Roland SC-55mkII Wave2 PCM (shared with SC-55ST, SC-155mkII, SCB-55 Wave3, CM-300 Wave3)

  • System: dos
  • SHA256: 5b753f6cef4c...
  • Validation: sha256
  • Source: src/sc55/rom.rs:134, src/sc55/rom.rs:152

sc55-roms/sc155-rev1/rom2.bin optional in repo
Roland SC-155 rev1 program ROM 2 (ROM1 shared with mk1-v2.00; Wave1/2/3 shared with mk1 family)

  • System: dos
  • SHA256: ceb7b9d3d9d2...
  • Validation: sha256
  • Source: src/sc55/rom.rs:289

sc55-roms/cm300-v1.30/rom1.bin optional in repo
Roland CM-300 / SCC-1 v1.30 program ROM 1

  • System: dos
  • SHA256: 9ec66abb5231...
  • Validation: sha256
  • Source: src/sc55/rom.rs:258

sc55-roms/cm300-v1.30/rom2.bin optional in repo
Roland CM-300 / SCC-1 v1.30 program ROM 2

  • System: dos
  • SHA256: f89442734fde...
  • Validation: sha256
  • Source: src/sc55/rom.rs:259

sc55-roms/cm300-v1.30/wave1.bin optional in repo
Roland CM-300 Wave1 PCM (shared with CM-300 v1.10 and v1.20)

  • System: dos
  • SHA256: 40c093cbfb44...
  • Validation: sha256
  • Source: src/sc55/rom.rs:138, src/sc55/rom.rs:260

sc55-roms/cm300-v1.30/wave2.bin optional in repo
Roland CM-300 Wave2 PCM

  • System: dos
  • SHA256: 9bbbcac747bd...
  • Validation: sha256
  • Source: src/sc55/rom.rs:139, src/sc55/rom.rs:261

sc55-roms/st-v1.01/rom2.bin optional in repo
Roland SC-55ST v1.01 program ROM 2 (ROM1, sub-MCU and wave ROMs shared with SC-55mkII)

  • System: dos
  • SHA256: 03517ac0a3b1...
  • Validation: sha256
  • Source: src/sc55/rom.rs:171

sc55-roms/cm300-v1.10/rom1.bin optional unsourceable
Roland CM-300 / SCC-1 v1.10 program ROM 1 (shared with v1.20)

  • System: dos
  • SHA256: 72ed35481efb...
  • Validation: sha256
  • Source: src/sc55/rom.rs:236

sc55-roms/cm300-v1.10/rom2.bin optional in repo
Roland CM-300 / SCC-1 v1.10 program ROM 2

  • System: dos
  • SHA256: 0283d32e6993...
  • Validation: sha256
  • Source: src/sc55/rom.rs:237

sc55-roms/cm300-v1.20/rom2.bin optional in repo
Roland CM-300 / SCC-1 v1.20 program ROM 2

  • System: dos
  • SHA256: fef1acb19695...
  • Validation: sha256
  • Source: src/sc55/rom.rs:248

sc55-roms/scb55-v2.00/rom1.bin optional unsourceable
Roland SCB-55 v2.00 program ROM 1 (shared with RLP-3237)

  • System: dos
  • SHA256: 00df835d3f97...
  • Validation: sha256
  • Source: src/sc55/rom.rs:269

sc55-roms/scb55-v2.00/rom2.bin optional in repo
Roland SCB-55 v2.00 program ROM 2

  • System: dos
  • SHA256: 541be4d0b1ef...
  • Validation: sha256
  • Source: src/sc55/rom.rs:270

sc55-roms/rlp3237-v2.01/rom2.bin optional unsourceable
Roland RLP-3237 v2.01 program ROM 2

  • System: dos
  • SHA256: e0a3d6d9b05e...
  • Validation: sha256
  • Source: src/sc55/rom.rs:280

sc55-roms/rlp3237-v2.01/wave1.bin optional unsourceable
Roland RLP-3237 Wave1 PCM

  • System: dos
  • SHA256: dae2a8bc0fd3...
  • Validation: sha256
  • Source: src/sc55/rom.rs:281

Generated on 2026-10-10T11:26:02Z