Skip to content

Raffaello/sdl2-hyper-sonic-drivers

Repository files navigation

Codacy Badge

windows linux macOS

Hyper-Sonic Drivers

sdl2-hyper-sonic-drivers is a sdl2 based emulating audio of '90s hardware PCs (adlib, OPL3, ...)

reading some old files too as utility and give the capability to render them in digital format or play them in real time

Digital sound files

Partially reading these types of files, depending of their format.

  • VOC files
  • WAV files

Music sound files

  • ADL files
  • XMI files
  • MID files
  • MUS files

MIDI Files

MIDI files Format 1 are converted to single track before playing them.

Format 2 file type is not supported as there is no sample available, but each tracks should be like a format 0 file (single track).

MUS Files

Are converted to MIDI.

XMI Files

eXtended MIDI files will be converted to MIDI Format 2 when there is more than 1 track. each track is like a format 0 MIDI file with eXtensions.

  • OPL XMI
  • MT32 XMI
  • PCSpeaker XMI
  • Tandi XMI

Emulators

At the moment the only implemented emulators are OPL chips.

Adlib/Sound Blaster PRO 2.0 chips

  • Mame OPL2
  • Mame OPL3
  • DosBox OPL2
  • DosBox Dual OPL2
  • DosBox OPL3
  • Nuked OPL3
  • "woody" OPL2/Surround OPL2 (adding a sort of chorus effect)

Roland MT-32

Roland MT-32 is emulated through MUNT.

ROMs are required to use MT-32.

Render Audio to Disk

It is possible to render the audio buffer to disk into a 16 bits PCM WAVE file of:

  • OPL emulated chips (ADL Files only at the moment)

Usage

see the examples folder for some various basic usage.

Credits

Most of the core emulation code is part of these projects:

Notes

TODO

  • GM
  • GUS
  • PC Speaker (8 bit, 16 bit, 32-bit processing)
  • XMI format (xmidi) (Westwood .PCS .C55 .TAN are XMI files)
  • render to digital wave or mp3