Star on GitHubStar2.4k stars

Case study

slopgs: reconstructing Microsoft GS Wavetable Synth

slopgs reconstructs the behavior of the Windows XP SP3 Microsoft GS Wavetable Synth driver in a portable C synthesizer. Its engine renders MIDI using gm.dls, with native and WebAssembly builds. MIDI probes and spectrogram comparisons against reference recordings guide refinements to synthesis behavior.

Targets
Binary
Category
Independent reconstruction cases
Relationship
Independent reconstruction project
Sources reviewed
Stars
2
Last commit
2026-11-04
Language
C

GitHub data as of 2026-11-09

Copy as MarkdownView JSONCite

Requirements & limits

  • Prerequisites: A C compiler is required for msgs-render; GCC is the tested compiler.
  • Prerequisites: Clang is required to build msgs.wasm.
  • Prerequisites: Supply gm.dls from a Windows installation for MIDI rendering.
  • Scope: The oracle accepts only the Windows XP SP3 swmidi.sys build 5.1.2600.5512, supplied separately.
  • License: No licence file in the repository.

Cite

BibTeX

@misc{slopgs-case,
  title = {{slopgs: reconstructing Microsoft GS Wavetable Synth}},
  howpublished = {\url{https://github.com/sloptainment/slopgs}},
  url = {https://github.com/sloptainment/slopgs},
  urldate = {2026-11-06},
  note = {Awesome REA entry: \url{https://awesomerea.org/resources/slopgs-case/}}
}

Plain text

slopgs: reconstructing Microsoft GS Wavetable Synth. https://github.com/sloptainment/slopgs (accessed 2026-11-06). Awesome REA entry: https://awesomerea.org/resources/slopgs-case/

Useful? Star Awesome REA on GitHub2.4k

About this entry

The description was reviewed against primary sources.

Report an outdated entry Suggest a translation fix

Primary sources

  1. README.adoc GitHub · sloptainment/slopgs · Revision 9eb9433
  2. Makefile GitHub · sloptainment/slopgs · Revision 9eb9433
  3. artifacts/oracle/README.md GitHub · sloptainment/slopgs · Revision 9eb9433

More in Native binaries

All 502 entries in Native binariesNative binaries case studies (64)

↑↓ move↵ open⌘↵ new tab