LUX HOMINUM (1994) for FM sound card, MIDI file player and optional signal processor Arthur B. Hunkins "In him was life; and that life was the light of men." John 1:4 GENERAL LUX HOMINUM is a slow-moving, meditative work that exists in the form of a 16- and 64-track Standard MIDI file--LUX16.MID and LUX64.MID. It is performable on any 2- or 4-op FM sound card loaded with one of nine custom instrument banks--LUXINSTx.xxx. It can be played by any DOS or Windows sequencer programs and MIDI file players that permit custom instrument banks to be loaded to the sound card. The composer is unaware of any DOS MIDI file player that permits this; however, all WINDOWS players, including Media Player, will work when driven by Jamie O'Connell's freeware FMSYNTH driver. MIDI file players, like Media Player, must use the 16-track version of LUX. Sequencers can play either LUX16 or LUX64; in the latter, MUTE ALL TRACKS except one set each of eight A and B channels. All A sets are identical as are all B sets; the only difference is in the "tone" (instrument group) entry order. (This is one of the ways in which "tone" order is variable; see below.) Only eight A tracks and eight B tracks are selected at a time. Whether or not stereo realization is possible depends both on the sound card and on its driver; only 4-op (OPL3) cards are capable of stereo. The FMSYNTH driver permits continuous stereo panning with any WINDOWS player/ sequencer. (Install FMSYNTH as you would any Windows driver, deleting any other FM driver before doing so.) With regard to DOS sequencers, only Cakewalk permits continuous stereo, when used with O'Connell's updated ADLIB.DRV. (It is the only DOS driver to permit true stereo.) Power Tracks Pro is limited to mono, as is Voyetra's Sequencer Plus Gold. Voyetra's SP Spectrum, for Media Vision's Pro AudioSpectrum 16 4-op board, allows for "hard pan"--LEFT/RIGHT/CENTER placement only. Any Sound Blaster or AdLib compatible board (i.e., 2-op OPL2) can perform LUX HOMINUM in mono. Duration (default) is approximately 11 minutes. Volume is soft to moderate throughout. MATERIALS FOR DOS SEQUENCERS Custom instrument bank files are included for two Voyetra sequencers, Sequencer Plus Gold and SP Spectrum. SP Spectrum is a version of Voyetra SP Junior specifically for the Media Vision Pro AudioSpectrum 16 4-op FM sound card. In addition to SP Spectrum, this board's software at one time included FMEDIT, a proprietary sound bank editor that creates banks of 4-op instruments with a .COM extension. 2-op equivalent LUXINSTx.COM banks are loaded to the Pro AudioSpectrum by substituting LUXINSTx.COM for TAPIMV2.COM twice in the SEQ.BAT file, with the instrument bank located in the same directory. FMEDIT can be used to exchange 10-instrument tone groups within each bank (see below). The PAS16 with its 4-op banks is capable of "hard pan" stereo only. These .COM files are designed solely for the PAS16 board. Sequencer Plus Gold contains its own Librarian with a 2-op FM bank editor. This editor too allows for exchanging tone groups within each bank. These banks have a .C35 extension and should be placed in the \VOYETRA\BANKS subdirectory. From there "Transfer" them to any 2- or 4-op sound board before playing the sequence. Set the librarian port # to 2 (unless the card has been set to another in your DRIVER.BAT file). The sequences specify port 2; make all port numbers correspond. These 2-op banks only work with SPG, but they install into any FM sound card. Whereas Voyetra products use proprietary sound bank files, most others-- including Cakewalk and Power Tracks Pro--use .IBK, Sound Blaster compatible 2-op banks. Both Jamie O'Connell's DOS-based SBTIMBRE and Flashpoint's Windows OPLEDIT shareware permit creation and manipulation of .IBK files. (They both can exchange "tone" groups, as do the other editors discussed.) SBTIMBRE is available from: Jamie O'Connell (CIS: 73030,351) 191 Park Dr. #44, Boston, MA 02215; 617 267-4556 ($39.95 plus $4.25 shipping). Flashpoint's address is: Flashpoint Productions, 677 Woodland Square Loop, Suite 100, Lacey, WA 98503; 206 493-1348 ($29.95 plus $4 shipping). With Cakewalk Pro DOS, load the .IBK files to the \CAKEWALK directory along with ADLIB.DRV, O'Connell's updated 2-op driver that permits continuous stereo with 4-op cards. (Also transfer the .CAL routines.) Copy ADLIB.DRV to MIDIPORT.DRV and the desired sound bank (LUXINSTx.IBK) to ADLIB.IBK. Use CAKEPRO -S to run the program, indicating STEREO mode for a 4-op (OPL3) sound board. (When you configure a 4-op board for stereo, be sure to specify the TRUE FM Port Address for the sound card rather than the Sound Blaster compatible address; otherwise one stereo channel will not sound. If you choose 4-op MONO, you get "hard pan" stereo.) In Power Tracks Pro, load the .IBK files to the \PTPRO directory and copy the desired instrument bank (LUXINSTx.IBK) to PT.IBK. Start the program with PT /CONFIG (or choose Configure in the Options menu); under Interface Setup select SB/ADLIB FM ONLY and an FM Percussion Channel of 0. (Incidentally, Power Tracks Pro--both DOS and Windows version--is limited to 48 tracks; it loads the first 48 and discards the remainder.) MATERIALS FOR WINDOWS SEQUENCERS/MIDI FILE PLAYERS All Windows player/sequencers must use Jamie O'Connell's FMSYNTH driver freeware. This is the only Windows FM card driver that permits loading custom .IBK instrument banks. After configuring the driver for your 2- or 4-op sound card, select the FMSYNTH applet and choose Percussion OFF, Panned (continuous) Stereo ON (4-op cards only). You can specify up to five LUXINSTx.IBK banks to be ready to load into the sound card at any time. Again be sure, with a 4-op card, to select the TRUE FM Port Address during driver Setup, or one channel will be missing from Panned Stereo. (Here too, 4-op mono results in "hard pan" stereo.) When using Media Player or any other MIDI file player utility, be sure to load LUX16 rather than LUX64; otherwise the application will lock up. The MIDI Mapper in Windows offers another resource for changing the entry order of "tones" (see below). VARIABLE PERFORMANCE PARAMETERS A number of performance variables may be determined by the user. These include: tempo, basic transposition level, instrument bank, "tone" (instrument group) entry order and note-group start times/durations. Tempo is user-variable from 40 and 66 (default is 60). Basic transposition level is variable between +7 and -3 (half steps). All active tracks are set to the same transposition level. There are nine instrument banks to choose from--LUXINST 1-9. All are identical EXCEPT FOR WAVEFORM (4-6 are slightly richer than 1-3; 6-9 are richer still). Within each set of three banks, only individual frequency multipliers differ; the three banks are functionally equivalent. Within a bank, each "tone" is composed of ten instruments. Instruments 0 through 9 comprise the first tone, 10-19 the second, etc. There are 12 variable tone events in all; these involve instruments through #119. (The first and last pairs of events are invariable and use instruments 120 and above.) Through #119, tones generally become more brilliant and treble- dominated the higher numbered they are (frequency multiplier numbers for the modulator increase). Tones 1-6 (instruments 0-59) alternate with tones 7-12 (instruments 60-119)--on opposite channels when performed in stereo. Various methods are available for changing the entry order of tones 1-12 (through their respective instrument groups). The principle is this: tones 1-6 may be exchanged with one another; 7-12 are also interchangeable. The exchange is made in sets of ten instruments; to exchange tones 1 and 2, instrument numbers 0-9 swapped with their counterparts in the range 10-19. (Change of order in MIDI Mapper works similarly; see below.) Exchanges may be made in a number of ways: 1) you may manually change them on the MIDI Line, Event List or other representation within the sequence; 2) you may exchange them within the instrument bank, using FMEDIT, SPG's 2-op Bank Arranger, SBTIMBRE or OPLEDIT; 3) in LUX64 (the 64 track version) you can select the A and B track sets that contain the particular order you like (all sets are different; inspect the MIDI line or Event List for channels 1 and 9 to determine the order for each); 4) in Windows you can use MIDI Mapper to switch out groups of instruments; or 5) in Cakewalk, you can run one of two CAL routines described below. CAL (Cakewalk Application Language) is unique to Cakewalk Pro DOS and Windows. Four CAL routines--TONESUB.CAL, RANDTONE.CAL, TONEORD.CAL and RANDTIME.CAL--are copied to the \CAKEWALK (or \CPW30) directory. Before running any of them, SELECT THE ENTIRE SEQUENCE (Thru to end), and ALL 16 TRACKS. TONESUB allows you to substitute any tone (within the allowable range) for any other (be sure not to pick duplicates). It alters the sequence's program change messages automatically. As a point of reference, the original order on tracks 1-16 is: 0 20 40 30 50 10 (1-8), alternating with 60 90 110 80 70 and 100 (9-16). (These are of course starting numbers for sets of ten instruments.) Remember that the first and last two tones in the sequence never change; they use instruments #120 and above, which are not involved in substitution. RANDTONE randomly substitutes tones (instrument groups) with allowable ranges automatically. After changing the order with TONESUB or RANDTONE, you can run TONEORD to examine the new arrangement; or use it simply to review the current order. RANDTIME is the most complex procedure. It permits you to randomly vary the start time/length of each composite tone (ten instruments), up to ten beats around the evenly spaced start times. This is the only way to vary start times/duration. This routine is to be performed only once on a given sequence. The various .CAL routines are invaluable in customizing the more involved performance parameters of LUX HOMINUM. In Windows MIDI Mapper you can also exchange groups of instruments to modify the entry order of tones. Installing FMSYNTH creates an FMSYNTH MIDI Setup. Make a new SETUP by selecting New and choosing the O'Connell FM Synth as Port Name for each channel; include for all channels the Patch Map name of a new PATCH MAP you will now create. In the new map, route your ranges of ten patches to their revised destinations. As above, keep the exchanges to within the groupings 0-59 and 60-119, recalling that the groups always run from 0-9. Before leaving MIDI Mapper, SELECT your new Setup so that it will become the active one. OPTIONAL EXTERNAL SIGNAL PROCESSING External, studio-quality signal processing enhances the sonority and character of the sound card's output. The composer uses a DigiTech TSR-24 true stereo multi-effects processor. Combinations of EQ, Detune, Phaser, Flange, Chorus and Delay can give appropriate enhancement. The idea is to create a bright, animated, yet somewhat subtle and APERIODIC effect that intensifies the image of "light." No stereo panning should be added by the processor; the only stereo imaging is furnished by a 4-op sound card; this is built into the sequence through MIDI Pan messages. Stereo sound card output requires true parallel stereo processing, which preserves the original image. Lacking a true stereo processor, the sound card should be set to produce mono.