Best way to handle XM tracks

For anything related to sound (YM2612, PSG, Z80, PCM...)

Moderator: BigEvilCorporation

Post Reply
KanedaFr
Administrateur
Posts: 1139
Joined: Tue Aug 29, 2006 10:56 am
Contact:

Best way to handle XM tracks

Post by KanedaFr » Tue Jan 07, 2014 9:34 am

Hi all,

I'm about to port a game.
No problem with logic and gfx for now but I wonder what'll be the best approach to handle music and sfx.
The original tracks are on XM format.
Following this thread (viewtopic.php?t=336), it would be a bad idea to write my own XM player, even more since I also need to get simple sound fx (ring, etc...)

So how would you do that port ?
Try to rewrite the tracks using another tool (like Defle, TFM, Echo or whatever...) ?

Come on, let's brain storm ;)

kubilus1
Very interested
Posts: 237
Joined: Thu Aug 16, 2012 2:25 am
Contact:

Post by kubilus1 » Tue Jan 07, 2014 6:58 pm

Use python to write an XM file parser that can spit out files compatible with other formats!

powerofrecall
Very interested
Posts: 237
Joined: Fri Apr 17, 2009 7:35 pm
Location: USA

Post by powerofrecall » Tue Jan 07, 2014 9:05 pm

Probably Echo, there's already an XM converter for it I believe?

Chilly Willy
Very interested
Posts: 2984
Joined: Fri Aug 17, 2007 9:33 pm

Post by Chilly Willy » Tue Jan 07, 2014 9:17 pm

You might want to load the XM tracks into an editor first to get an idea about the composition - how many instruments, what kinds of instruments, how many tracks... that sort of thing. Converting XM music using 32 tracks might be beyond what the MD can handle.

Another thing you could consider is if the SCD is present, use it to play the XM music. I've posted a few examples of using mikmod to play music, and a nice MOD player, both for the SCD.

KanedaFr
Administrateur
Posts: 1139
Joined: Tue Aug 29, 2006 10:56 am
Contact:

Post by KanedaFr » Wed Jan 08, 2014 12:47 am

Thanks for your suggestions.

- it's a md game, not mcd game
- I know I have XM for 2 to 6 channels (mainly 4)
- I didn't know about Oerg866 xm2esf tool !!!

I was waiting for a valid reason to try Echo...
It seems it's funky time !

tomaitheous
Very interested
Posts: 256
Joined: Tue Sep 11, 2007 9:10 pm

Post by tomaitheous » Wed Jan 08, 2014 3:12 am

XM's not so bad. Depends on what the songs actually use of the XM format. I wrote a PC XM to PCE XM converter, to play XM's on the pc-engine. Of course, I had specific limitations for the song (mostly my stuffs), but the point is - it's a fairly easy format to convert from.

Aly James
Very interested
Posts: 74
Joined: Sun Mar 31, 2013 11:34 pm
Location: FRANCE
Contact:

Post by Aly James » Thu Jan 09, 2014 1:57 am

Might be of interest, you will be able to convert FMDrive & SPSG VSTs compositions into VGM files which add the benefit of complex register changes over time and for ANY registers...(special & CSM support will be added later).
https://soundcloud.com/alyjameslab/big- ... sg-vst-now
This is done via an update to the Valley Bell's Mid2VGM converter that will now support FMDrive MIDI controller messages :)

SPSG VST output can already be converted via Mid2PSG too

I am currently debugging these tools and the update(s) should be available in a few weeks at VGMRIPS :) :)

Chilly Willy
Very interested
Posts: 2984
Joined: Fri Aug 17, 2007 9:33 pm

Post by Chilly Willy » Thu Jan 09, 2014 4:02 pm

The main issue to watch out for when generating VGM files is to make sure to init the PCM channel before using it, and any time you switch back to channel 6 FM. Too many VGM files don't, so the PCM doesn't play on real hardware.

The problem probably arises because they check the VGM on PC players that treat the PCM as a completely separate channel independent of FM channel 6. That's the easiest way to make a VGM player for a PC that works, but it isn't how real hardware works, so it doesn't work on real hardware.

Channel 6 FM or PCM must be explicitly initialized before doing FM or PCM, respectively. Every, single, time you switch.

Aly James
Very interested
Posts: 74
Joined: Sun Mar 31, 2013 11:34 pm
Location: FRANCE
Contact:

Post by Aly James » Tue Jan 14, 2014 2:53 pm

Yeah, I haven't checked that part of VBell's code but it seems to me that the DAC (ON OFF)register is handled well. Thanks for the reminder anyway :)

This has been converted from FMDrive VST to VGM (Mid2VGM new beta) then to ROM (with D Fish's VGMPLAY 3.2)
There is a .VGM and Hardware Model 1 recording in the description.
https://soundcloud.com/alyjameslab/wand ... drive-spsg

Post Reply