Antic Music Processor:
Now you can add lyrics and sound effects, Program by Steven Lashower
Antic Music Processor, the popular December 1988 Super disk bonus, came with a sample song that displayed song lyrics. But there was no apparent way to enter lyrics-- author Steven Lashower had plugged in text directly at the programming level. Many Antic Disk users seem to have spent hours staring in amazement at the "Come Sail Away" composition and pondering, "That's great...but how can I do it?"
Now, Antic Music Processor, Version 2.0(AMP) comes with a fully integrated lyric editor to give you that power. Version 2.0 also contains many new enhancements and additional features. Even more than the original version, this new Antic Music Processor is the most powerful music performer available for the 8-bit Atari sound chip. As you'll see in this issue's article about the AMP Song Contest Winners, the program has been used successfully for processing music as complex as Gershwin's entire "Rhapsody In Blue."
Your June 1989 Antic Disk--featuring Antic Music Processer, Version 2.0, plus the AMP Song Contest Winners as well as every type-in program from this issue--will be shipped to you within 24 hours after receiving your order. Just phone Toll-Free to the Antic Disk Desk at (800) 234-7001. The monthly disk is only $5.95 (plus $2 for shipping and handling) on your Visa or MasterCard. Or mail a $5.95 check (plus $2 shipping and handling) to Antic Disk Desk, 544 Second Street, San Francisco, CA 94107.
This article explains the new features and commands in Antic Music Processor, Version 2.0. If you don't already know how to operate the Antic Music Processor you'll find full instructions in a large HELP file on this month's Antic Disk. Those on-disk instructions are likely to be necessary for your understanding of the user information that follow. Admittedly, Antic Music Processor is not a program for Atari novices.
By the way, the December 1988 Antic Disk, also still available from the Disk Desk, includes the AMS File translator utility program that converts widely available public domain files from Advanced Music System II into Antic Music Processor format.
Another good reason why you might want to own both versions of Antic Music Processor is that all the new features make Version 2.0 use more memory than its predecessor. This could cause problems loading large song files created with Version 1.2.
You may be able to load massive files and play back most of the song in version 2.0 but the end of the file might be damaged. Trying to edit over-large files can cause the program to lock up. Instead, load any such files into Version 1.2 and cut them down there. Size limitations will vary depending on the memory available in your 8-bit Atari computer.
While you are editing your new songs, be sure to save your files often. On some rare occasions, Version 2.0 has locked up when the P command is typed in the Note Editor. Nobody has yet been able to get this bug to repeat consistently, which would be the first requirement for fixing it. Any further information on this will be appear, as soon as available, in Antic and on Compuserve's ANTIC ONLINE.
USING THE PROGRAM
Copy Antic Music Processor, Version 2.0 to another disk formatted with DOS 2.0 or 2.5. Don't attempt to run it directly from the monthly Antic Disk. Be sure the new disk contains the DOS.SYS file. Use DOS command E to rename AMP2.EXE to AUTORUN.SYS. Turn off your computer and remove all cartridges. Place the disk in drive 1. If you're using an XL or XE, hold down the [OPTION] key while you turn on your computer. Antic Music Processor will load and run automatically.
Two new commands have been added to the Main Menu:
X--Exit to DOS--Press the X key and insert a disk with DUP.SYS to exit to DOS. All music data currently stored in the computer's memory will be erased.
W--Lyric Editor--Press the W key to enter AMP's integrated lyric editor.
L and S--Before, AMP was only able to load and save files to drive one. AMP Version 2.0 allows you to load or save an AMP file from any disk drive. For example, to load "Come Sail Away" from drive 2, you would type:
L D2:COMESAIL.MUS [RETURN].
NEW EDITOR COMMANDS
L--Lyric Advance. Used to display and advance lyrics one syllable at a time.
Nx,y,z--Note command. One of the few complaints about AMP 1.2 was that it lacked the ability to produce sounds other than pure tones. Note is an extremely powerful command that can harness some of the power in the 8-bit Atari's sound generating hardware that until now, has never really been utilized in previous music programs.
AMP's new Note command gives you the ability to produce sound effects and noise. Note is very similar to Atari BASIC's SOUND command. Instead of using four numbers like Atari BASIC, Note uses the following three:
x--Sound pitch (0-255) is exactly the same as the second number in Atari BASICs SOUND command--the lower the number the higher the frequency of the sound.
y--Sound distortion (0-254).
z--Sound duration (1-126) in clocks. See Figure 1 for a list of durations and their corresponding clock values.
Let's convert SOUND 0,121,10,8 into a Note command that will be played for 96 clocks, the duration of a half note:
Y (10*16)+ 8
The third number in BASIC's sound command (distortion) must be multiplied by 16 and added to the fourth number (volume). The result gives us NOTE 121,168,96, which can be entered into the AMP music editor by typing:
You can use AMP's integrated Lyric Editor by pressing W from the Main Menu. The Lyric Editor is divided vertically into different sections. In the upper-middle of the screen is a big blue 20 x 11 character window. Up to 11 lines of lyrics can appear in this window at one time.
To the immediate left and right of the window is a small pointer. Pressing [CONTROL] [UP-ARROW] will move the pointer up one line and [CONTROL] [DOWN-ARROW] will move the pointer down one line. The line bracketed by the pointers is the current lyric line." Then [CONTROL] [LEFT ARROW] and CCONTROL] [RIGHT ARROW] can be used to center the text in the current lyric line.
As you type commands, they will appear in the command line near the bottom of the screen. Error messages will be displayed just below the command line. The status line at the bottom of the screen shows three things:
1. The number of the current lyric line.
2. Entry Mode, either Text or Play.
3. The amount of memory left for entering lyrics.
Let's go through the steps to enter the first line of lyrics for the song, "Come Sail Away" -- I'M SAILING AWAY. To start out, type C from the Main Menu to clear out any music that might be residing in memory. Now, type W to enter the Lyric Editor.
First of all, we must tell AMP that we're going to enter one line of lyrics. The command for this is L=- followed by up to 20 characters. No more than twenty characters can be displayed on a single line of lyrics. If you type the line below, it will now appear as the top line in the lyric window.
L=I'M SAILING AWAY [RETURN]
Next, we determine where to divide the lyrics up into syllables and breaks: I'M-SAIL-ING-A-WAY. Now we let AMP know about the syllables. Use [CONTROL] [UP-ARROW] to move the pointer back up one line.
Notice that the lyric line is now highlighted right under the window in big, blue Graphics 1 (ANTIC 6)text. Look just below the Graphics 1 line to find the letters which correspond to the syllables and breaks. These letters will be-E, I, N and M. Now type: S=EINM [RETURN].
The E and M are used because they are spaces separating words, and like syllables, spaces are considered breaks. Press [CONTROL] [RIGHT-ARROW] twice to center the line on the screen. To see how this line will look when played by AMP, type: P [RETURN].
This changes Mode in the status line from Text into Play. Watch the Graphics 1 line and press [RETURN] to simulate a Lyric Advance command. Continue to press [RETURN] until the status line shows Mode: Text.
You can abort play mode by pressing [ESC]. Pressing [ESC] while in text mode will return you to the Main Menu.
LYRIC COMMAND SUMMARY
L= (followed by up to 20 characters) [RETURN]--Enters a line of lyrics into the Lyric Editor.
S= (followed by any sequence of letters from A to T) [RETURN]-- Assigns syllables to the highlighted lyric text.
C= (followed by any sequence of letters from A to T) [RETURN]-- Removes syllables from the highlighted lyric text.
P [RETURN]--Changes to Play Mode and will perform the highlighted lyric text. Pressing [RETURN] repeatedly simulates the Lyric Advance command.
[CONTROL] [UP-ARROW]--Moves the pointer up one line. [CONTROL] [DOWN-ARROW] moves the pointer down one line.
[CONTROL] [LEFT-ARROW] shifts the highlighted text one space to the right. The leftmost character, if any, will now "wrap around" and become the rightmost character. [CONTROL] [RIGHT-ARROW] shifts the highlighted text one space to the left.
[TAB] --Copies the highlighted line of lyrics down to the command line where it can be edited by pressing the [DELETE/BACKSPACE] key.
[CONTROL] [DELETE]--Deletes the highlighted line of lyrics and places it in a one-line buffer. Any previous line stored in the buffer will be lost.
[CONTROL] [INSERT]--Takes the line of lyrics currently in the buffer and inserts it directly above the highlighted line of lyrics.
[CONTROL] [CLEAR]-An alternative to the C= command, clears ALL of the syllables in the highlighted line of lyrics.
[ESC]--While in Play Mode, [ESC] can be used to return to Text Mode. While in Text Mode, hovever, [ESC] is used to return to AMP's Main Menu.
Steven Lashower studies Computer Science at California State University, Fullerton and works at Disneyland. He wwould be glad to see your comments and suggestions about Antic Music Processor, if you send them to him in care of Antic.
Listing 1: AMP2.EXE Download
If you have any questions, please feel free to e-mail
me at email@example.com. I'm not sure how much longer that e-mail will be active,
but you can always write me on comp.sys.atari.8bit and I'll be sure to see the post
sooner or later.
Hopefully, you'll find some use for all of this...or learn something from it.
AMP was definitely a labor of love, and next to Mortal Kombat Trilogy Saturn,
is probably the project I'm most proud of. Apologies go to Philip Price from
whom I stole his acronym (AMP - Advanced Music Processor) and his player GUI.
Phil was a true genius, so at least I stole from the best. Feel free to use the
code however you see fit, but do be a sport and give me a line of credit...also,
I'd really love to see how it was put to use! :)"
Listing 2: AMP2.DOC Download / View
Source code: AMP2.XFD Download
In April 2002, Steven Lashower released the source code for The Antic Music Processor. The XFD download includes the executable and the source. Mr. Lashower's notes: "AMP was written using Mac/65. Iím afraid that the original source code is not very readable - I only had 48K of RAM, so I had to make the source code as small as possible (i.e., not very many comments and rather short labels). Also, I was only in 11 grade at the time, so don't expect some kick-butt 6502 code. ;) The player itself is rather silly - it uses a CPU delay loop for timing instead of syncing up with the VBLANK. Oh, well-feel free to fix it.
If you have any questions, please feel free to e-mail me at firstname.lastname@example.org. I'm not sure how much longer that e-mail will be active, but you can always write me on comp.sys.atari.8bit and I'll be sure to see the post sooner or later.
Hopefully, you'll find some use for all of this...or learn something from it. AMP was definitely a labor of love, and next to Mortal Kombat Trilogy Saturn, is probably the project I'm most proud of. Apologies go to Philip Price from whom I stole his acronym (AMP - Advanced Music Processor) and his player GUI. Phil was a true genius, so at least I stole from the best. Feel free to use the code however you see fit, but do be a sport and give me a line of credit...also, I'd really love to see how it was put to use! :)"