Sound Effects Another Way

From Uzebox Wiki
Jump to navigation Jump to search

PatchTool

PatchTool is a program that you can run directly on your Uzebox to develop sound effects for your game. It might be more useful to use in Uzem where you have access to other resources on your PC. Perhaps incorporating elements from Sound Effects An Easy Way and using this tool to fine tune before you finally copy it to your game's patch file. You will develop your own process that works best for you. This program really helps beginners to hear the difference their commands make, and helps to get a feel for making good patches. Besides that, advanced user's will likely find the ease of fine tuning and rapidly hearing results to be just what they need to achieve that perfect 8-bit sound.

Getting Started

This is a fairly straight forward method of sound creation. First you will need to download the actual PatchTool file here:PatchTool.hex PatchTool.uze.

Patchtool.png

Now fire it up in Uzem or put it on your Uzebox and familiarize yourself with the controls and cursor movement. Your screen should look like the above picture. The controls are conveniently displayed in the right panel. Pressing a button on the joypad will light up the corresponding panel item to indicate which button was pressed(nice to have in Uzem). You can insert,delete,copy,paste,and inc/decrement any value just like you would be doing in a text editor to modify the sound. When you first start the tool a default patch will be loaded, which is Lolo's shooting sound. To familiarize yourself I suggest you change a couple of the PITCH commands to tremolo, env_speed, or other things. Play with the frame delay before commands(left numbers) as well as the note steps to the right of the pitch commands and hear how they change things. Press and hold start until the Loop indicater turns green in the panel. This will play the sound repeatedly so you can hear your modifications in real time! Press the select button to comment out a line(it turns grey) so it is not processed and hear the change. Read the other sound documentation, experiment, and ask questions on the forum and you will become quite proficient. Here's a quick run down of the somewhat cryptic text on the right panel.

Loop - This indicates whether or not looping is on. If so the text will be green and the sound will play again automatically after   it's done.
Slow - This is the amount of ticks added to the actual frame delays you specified. This has the effect of slowing your sound down to hear it in more detail.
Line - This is what line of the patch you are currently working with.
#CMD - The number of effective commands in the patch.
ToCrs - The number of frames it will take to get to the line the cursor is on. 
EStp - The value the envelope step will be when the kernel reaches the cursor line.
EVol - The value the envelope volume will be when the kernel reaches the cursor line.
WAVE/NOISE - This indicates whether the patch is a wave or noise channel patch. Having any NOISE_PRMS will automatically set it to noise. The lack of such commands will automatically set it to WAVE.

Final Note

That's about all the explanation necessary for the program. I still recommend you take a look at the other sound resources on the wiki until you have a good understanding how this all ties together. You will still need to understand how all the commands work and learn from experience to have good results. If you play around with this tool enough, it is my hope it will ease your development and increase the quality of your work. When you are happy with your patch, just type it into a text editor(you didn't think the tool was going to do everything, did you?). Remember for screen space reasons command names were shortened. So something like TRM_LEVEL should be typed in as PC_TREMOLO_LEVEL since that's it's actual name in the kernel. Look at the command names in Patch Commands Defined and it should be pretty easy to do the conversion by hand. Hope you find it useful on your next game. If not, it's still kind of fun just to mess around with! Enjoy!