Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /storage/content/49/145849/famitracker.com/public_html/forum/classes/dbHandler.php on line 29
I'm interested in trying to make some kind of ftm to mid (or vice versa) conversion tool. Is there a ftm file format specification somewhere that I can use, and, do I need a hex editor to view an ftm properly?
No, the idea was to convert ftm files into midi so they can be edited in a midi sequencer and then converted back to ftm so they can be edited in famitracker again. In order to make a converter I need to know how the ftm files work. Some data will most likely be lost in the process as well.
I tried opening an ftm file in a hex editor but only a few keywords were intelligible, the rest were just null and various strange characters. I'd like to know the structure of the ftm and how to interpret the information in there. I suppose I could find out by looking at the source code for the tracker and study the part where it opens ftm files, but it seems reasonable to me that jsr has a specification somewhere.
There is a free hex editor out there called (co-incidentally) frHed. I found it on happenstance while searching for a free hex editor (the cheap bastard that I am).
I suggest you use your favorite search tool (not everyone Googles or Yahoos ) and find the hex editor that way anyway. I can't remember that address anyway. I do lots of things in my time, so I can't remember some things that well (I am currently trying to learn C++ while juggling pixel art and music - things necessary for someone willing to take on the world of video game creation all by himself).
Anyway, best of luck, or bol.
_______________________
You now process Dracula's Rib. Good luck processing it...
Well then, good luck to you on that. I think jsr would appreciate this effort, and it would bring a whole new crowd into the FamiTracker community (those who tend to lean on MIDI software more than tracker software). Though, I think, those in the former will probably learn how to track anyway if they see their fruit converted into tracker format. That's just my opinion, though.
_______________________
You now process Dracula's Rib. Good luck processing it...
The idea is, it would be nice to be able to enter the notes in a midi sequencer and then import the whole thing into famitracker, but since the midi import function of famitracker doesn't work very well right now, it would have to be done with an external converter. And if I could just understand how the ftm file works I think I could make a pretty good converter.
Dafydd, what exactly you want to get as output? Music data which can be used or real console, or just sound file? In second case you have option, you can use any sequencer with VSTi support and 2A03 VSTi.
The final output would be an nsf file. The converter I want to make would convert ftm to midi and vice versa, and the ftm would be opened in Famitracker to create an nsf.
You could think of it as a faster alternative to programming a whole new piano roll type interface for Famitracker, something I won't be able to do for years and which will take years to do once I know how.
Well, maybe if will be much simpler to make midi-to-nsf converter then?
Actually, there is another one alternative: you can learn power of trackers, finally. You must understand that there is reason why piano roll interface is not popular in music editors for old systems: piano roll does not give enough control of everything, and you really need to have that level of control if you want to make music with complex and quality sound. Just imagine how you will edit single channel echo with piano roll, trying to not overlap notes also (because you must keep single voice polyphony). Not to speak about all the effects where you need to use exact values, not approx. ones (most controller editors in the piano roll sequencers are not designed to use exact values).
In order to make a midi-to-nsf converter I would have to learn NES assembler. Hardly a shortcut. In that case it would be preferable to use a midi-to-mml converter, since one already exists, but even that one doesn't have all the functionality I want.
I believe I could make a midi-to-ftm converter that's advanced enough to be useful. Controllers can be accurate enough in piano roll sequencers - volume could be integer divided by 16, for example, and values from 0 to 127 could be translated into values from 0 to 15. Multiple simultanous notes could be remade into arpeggio effects, or portamento effects, depending on the value of a certain controller.
While me finally learning the power of trackers would probably be the best solution for everyone, what I wanted was a file specification. I will always prefer piano roll sequencers over trackers, simply because it's what I'm used to.
The FTM format is not documented anywhere (other then in the source code), but I can write it down sometime. And yes the format is in binary and not very well designed. I didn't think I'd work much on this back then so I just came up with something.
But it would probably be simpler to make an extension to the program that exports from the data structures instead so you won't have to deal with files directly. (New versions of files usually breaks compatibility with older versions.)