Page 1 of 1

MDSDRV - new 68K sound driver for Mega Drive

Posted: Sun Oct 11, 2020 10:02 pm
by TheMVRules
Hello all,

I have developed a new sound driver for the Mega Drive. It runs on the 68000 (using the Z80 exclusively for PCM sample playback) and has the following features:

Code: Select all

    Runs on the 68000 with the Z80 controlling PCM playback.
    16 monophonic tracks that can be used for BGM or sound effects. Each track can be assigned to a channel with 4 levels of priority.
    Can use any combination of FM, PSG and PCM sound sources.
    FM3 special mode:
        Can assign each or a pair of FM3 operators to one or more separate tracks with volume control.
    PCM playback modes:
        2 channel PCM playback at ~17.5 kHz with volume control
    Compact sequence format
        Sound data can be compiled from MML files using ctrmml
    Various effects supported:
        PSG volume envelopes
        Pitch envelopes
        Portamento
        Fade in/out
        Song volume and tempo control
    Equal temperament scale with 256 steps per semitone, allowing for easy detune or pitch slide effects.
    Unencumbered source code
    Fully position-independent code - supports any assembler or toolchain by including the binary blob.
    Uses approximately 1 kb (1024 bytes) of RAM.
    Integration with SGDK
Currently the only way to make music for it is my fancy MML compiler, but if there is enough interest I will consider writing converters from other formats or perhaps even a native (LSDJ style) tracker allowing you to make music on a real system or emulator.

The sound driver is free software under the zlib license, and is available here: https://github.com/superctr/MDSDRV.

The test ROMs are available in the "Releases" page. I have tested them using a Mega Everdrive Pro on a Japanese VA0 Model 1 and European VA6 Model 1 console.

Re: MDSDRV - new 68K sound driver for Mega Drive

Posted: Sun Oct 11, 2020 10:33 pm
by danibus
I have NO idea about music, just THANK YOU for developing this for scene :D

Re: MDSDRV - new 68K sound driver for Mega Drive

Posted: Sat May 15, 2021 6:49 am
by frca
This is cool.
Is it possible to change/mix stuff "on the fly"?
What I have in mind is pitch-bending FM channel to reflect e.g. current RPM of a car engine, and also accidental playback of a PCM samples in case a gun has been shot.

Re: MDSDRV - new 68K sound driver for Mega Drive

Posted: Fri May 21, 2021 11:37 am
by TheMVRules
It's possible to play sound effects on the PCM channels. Dynamic pitch adjustment of FM channels is certainly doable, but I haven't written any code for that yet...