Sleizsa Duo is a sound driver for the Channel F made by irrlitch project, based on b00daw's Sleizsa.
It features not one, but two channels, 2 different interrupting drum sounds and 15-bit frequency precision. Also, while b00daw's tool is a mml interpreter, this one features a xm to bin (rom file) converter, being more friendly to tracker users out there :D/
Download / Github / Sound sample (made by irrlitch project)
The xm converter requires Perl, dasm and MESS to run. Apart from Perl, you can get both dasm and a pre-configured MESS from b00daw's Sleizsa. As long as you paste dasm.exe directly in /SleizsaDuo, it should work.
Sleizsa Duo comes with an example song (music.xm) that you can use as a template.
The xm file has 4 channels - however, only 3 will be used. You must use instrument 1 on channels 1 and 2, using notes between C-0 and B-5, and the drum sounds at channel 3 OR 4 (not both at the same time). Volume commands AREN'T supported. The only supported effect is Fxx, and between a value of 02 and 1F. You also can also change the initial speed(ticks/row) of the song, but the minimum value 2. You CANNOT change the BPM/tempo.
It's recommended to use Milkytracker to make your song, but you can use other xm trackers, as long as you resave your song with Milkytracker, else conversion will fail.
Run compile.bat to convert your song - it must be named music.xm and the output will be test.bin, but you can change those by editing the .bat file.
After the conversion, you'll want to run the file in MESS, the emulator - however (unless you've gotten it from the original Sleizsa's package) something will be missing: the Channel F ROM files. You should get those and put them in (folder where MESS is)/roms/channelf. Then, run it and open your song.
If you're having problems doing so, just create a .bat file called run.bat with the following instructions:
mess channelf -cart test.bin"
or change mess to mess64 if you're using the 64-bit version.
To record sound directly from MESS, add "-wavwrite filename.wav" to the command line that initiates MESS.
"mess channelf -cart test.bin -wavwrite test.wav"