This is awesome! Working with the DAC/PSG channels is so much better than working with a MIDI converted with VGM2MID. Now I can finally fix up a Diamond Dust Zone Act 1 MIDI that doesn't sound like ass. Although I do have one request. Is it possible to split certain FM channels that change their "instrument" to separate tracks? I know that the MIDIs SMPS2MIDI outputs change the instruments within the one FM channel, but I'd like the option to output the changes to separate channels. Like for example: Chemical Plant before splitting: Chemical Plant after splitting: This is from a MIDI converted with VGM2MIDI but you get the idea. I'm not sure if there's a program out there that can do this to a MIDI - if there is, I'd love to know what it is. I had to split everything manually so I could work the the entire song in FL Studio. :\
It's easier to write a seperate tool that does that. It would be an easy task, so I'll write one when I have some time. EDIT: added quote
Sorry for the bump, but could you re-upload this? The link's gone down. Or if anyone could mirror it, that'd also be great.
Hmm ... sometimes a few files on my Mediafire accunt seem to disappear. Here is the re-upload, or better said, the new smps2mid 0.4 beta. I've added 2 new SMPS formats since version 0.3. Which ones? That's something you have to find out by yourself. :P Enjoy!
I already wondered when someone would finally notice it ... It's good to know there are still a few people that look for new features.
Oh don't worry, I noticed it when selecting SMPS type, I just didn't make any posts about it! :v: It's interesting to see the past versions of the SCD music actually sequenced in a DAW, though.
I already wondered when someone would finally notice it ... It's good to know there are still a few people that look for new features. EDIT: I got redirected to a white page every time I clicked the "Post" button. Please trash all the double posts.
Let me present: smps2mid v0.4.3 You can download the Win32 Binary or the source code. Compared to the 0.4.0 beta, there are a few new features: proper PWM volume/pan conversion support for generic SMPS Z80 and 68k formats support for Ristar and Sonic Spinball SMS improved conversions of songs within ROM banks (I.e. all Z80 formats) fixed a bug with PSG 3 noise notes being off by 1 when replayed I also did a few changes to the source code that don't have an effect on the conversion, but they show what I have planned: reworked large parts of the source code to make multiple SMPS variants easier to support -> preparation for externally definable SMPS coordination flags changed the way I mapped DAC sounds and SMS drum notes -> next version will have custom DAC maps It's currently hardcoded via constants, but in the future you have a few options for the PSG instruments. "Square Wave instrument + Bank LSB" or "PSG instrument = MIDI instrument" for PSG noise: "Note based on PSG instrument" or "use SMPS note and set vary PSG instrument" Sonic & Knuckles still doesn't work properly though. All you can do is decompressing the sound driver manually, insert it into the ROM and make smps2mid use the decompressed pointer lists. I also need to add a few additional features to improve SMPS Z80 pointer lists in general. There is currently no way to speficy a list of ROM bank values for the pointers. (And not only S&K and S3D are using such lists.) Also, if you wonder about the version number: fixed PWM volume algrithms were planned for 0.4.0 final, but I did SMPS Z80 support first. About those "generic" SMPS formats: SMPS 68k should work with almost all SMPS 68k games. I know that MJ's Moonwalker and Nekketsu Koukou Dodgeball Bu are using Sonic 1-style Modulation commands, so they won't convert correctly. SMPS Z80 should work with the majority of the SMPS Z80 games, but modified drivers and commands are a lot more common. Ghostbusters has a few custom flags but works mostly. OutRunners and Virtua Racing use a completely custom command set and don't work. There are a few differences between SMPS "Z80 a" and "Z80 b". One can control the YM2612 timer to change the music/sfx speed (Z80 a) and the other one can jump out of a loop (Z80 b). Just try the other variant if one doesn't work. Enjoy and happy converting!