AdLib Visual Composer
As it turns out, all along there was a readily available program for composing the FM-synthesis music used in RSD's Game-Maker. In the late '80s, Ad Lib, Inc. released the AdLib Music Synthesizer Card, the first widely supported sound card for IBM-compatible PCs. For this card they released an intuitive graphical interface for composing .ROL format music files and building sound banks.
Visual Composer is simple and fully featured, considering its vintage. Its mouse-driven interface is very much like Deluxe Paint, and it employs many modern keyboard shortcuts like ctrl-c and ctrl-v. With some twiddling you can even bend and taper notes at will. The only major features it lacks are an undo function and a way to stretch or compress blocks of notes in order to fit a new time signature.
Also included with Visual Composer are AdLib Instrument Maker, for constructing sound banks for use in Visual Composer, and AdLib JukeBox, for rocking out to the fruits of one's labor. Jukebox includes several sample tunes in various genres, some of which have become sound library staples over the years.
Visual Composer was widely used amongst turn-of-the-'90s PC developers such as Dan Froelich of Epic Megagames, in much the same way as Deluxe Paint and Autodesk Animator became standard visual design tools. When Creative later grandfathered a similar Yamaha FM chip into its own Sound Blaster cards, for a while PC composers simply continued writing in AdLib's format, sometimes converting the files to Creative's native FM format.
With some further research, it turns out that Visual Composer isn't just an excellent tool for writing Creative Music Files; it is the actual tool. Just as the the original Sound Blaster is built around the infrastructure of AdLib's card, Creative based its own music format on AdLib's Piano Roll format.
As it happens, there is no native program to compose in .CMF format. Rather, all .CMF files are converted from .ROL files (or rather awkwardly and inefficiently from .MID). Therefore as AdLib Visual Composer is the official tool for writing .ROL files, it is also the definitive tool for composing .CMF files. Not just a great tool; not just an ideal tool -- the tool.
So. For all practical purposes, consider it part of the extended Game-Maker suite.
Visual Composer works with AdLib's own .ROL format, which is basically a form of MIDI that pulls on an external .BNK sound bank file, full of FM synthesized patches, for its instruments. There are nine available sound channels (or six plus a drum kit including bass drum, snare, tom, cymbal, and hi-hat), each of which can play a different instrument at the same time. You can also adjust the tempo, the time signature, the volume and pitch offset of each note, and many other elements.
To use a composition in Game-Maker, you need to convert the .ROL file to Creative's proprietary .CMF format with a command-line utility called ROL2CMF.
Compared to its .CMF conversion, generally an original .ROL file will sound a little more distinct and roomy, with a fuller tone, but the result can depend on the player. Once converted, to employ a CMF file in a game Game-Maker needs to tweak its clock speed using Sound Designer.
- To change samples in Visual Composer, click anywhere above the piano roll (where by default it says "PIANO1"), then hit F4 to bring up the instrument list. You can swap instruments on a beat-by-beat basis if desired, though for the sake of sanity it makes sense to broadly limit yourself to one sample per channel.
- If you want to vary drum attacks or instrument volume, you can do it on a note-by-note or beat-by-beat basis by selecting DISPLAY/VOLUME. Likewise you can alter the pitch accuracy, to allow for pitch bends or chorusing effects.
- To change time signature, under DISPLAY select "Ticks per Beat..." and "Beats per Measure...".
- To gain an extra three instrument channels, under OPTIONS choose "Without Percussion"; the trade-off is that you lose your tone-free drum channels. If you're clever, though, you can compress most of your drums into one or two channels, with frequent instrument changes.
- Note that using the tom-tom channel will distort the tonality of the other drum channels.
- Visual Composer will tend to lock up while playing longer files; to stop playing at any time, hit CTRL-I.
Editing and interface
- Visual Composer supports many familiar keyboard and mouse shortcuts -- CTRL-C, -X, and V for copy, cut, and past; Shift-click to select a range of notes.
- When you cut a selection of notes, be aware that all notes to the right will snap to the left, to fill the hole left by the missing notes. If you want to leave the rest of the channel intact, instead of cutting you can select "clear" from the menu.
- When cutting and pasting blocks of notes, note that you also are copying any instrument, volume, and pitch changes. If you are copying notes from one instrument channel to another, you may want to check that all the settings are consistent with the target channel.
- When editing the JUKEBOX.DAT file to set up a playlist, note that the player will ignore the last line in the file -- so at the end of the file make sure to always enter a random character or garbage phrase on a new line.