AY music with digital samples by Alone Coder Playing digital samples in the free time of the processor is not presents difficulties. The idea to combine AY with General Sound has also been known for a long time (although I don’t remember any releases). But still for some reason there was not a single editor who allowed me to write this kind of music. Inspired by the requests of workers, I decided to implement such option: added a special command (8snn) to Pro Tracker. B field "s" contains the sample number, "nn" - note. (General Sound plays only 3 standard Amiga octaves, notes are coded from #24 to #4A.) If you use this command on channel A, then the sample will play in the GS channel A. B - in B. C - in C. So in this the editor produces 9 channels: 6 on AY (TurboSound) plus 3 digital. Of course, if you want to use music in On an AY-only release, you can limit the channel selection. Workflow in this experimental version of Pro Tracker looks like this: 1. Prepare a MOD file with your samples (not looped). 2. Place it on TRD under the name "filename.i". 3. Launch Pro Tracker. 4. Load your MOD file into it (nothing likeas if not will happen, but the samples will be loaded into General Sound). 5. Write music :) Please note that if you do not load the MOD file, then General Sound will hang on the 8snn team. This happens because GS'naya The "Play FX" command does not work if the parameter is a non-existent sample was substituted. Maybe I better clean up all the samples when you start the editor? Write your ideas. * * * If we play music on AY and GS at the same time, we need synchronize playback speed (frame rate on ZX) and note frequencies (determined by the AY clock). The first one is not as important as second, if we manually send each note to GS, but that’s all It can also be noticeable if two samples need to be played in a row without rupture. So we need to standardize these meanings. If I remember correctly: 48K: 50 Hz, 1750000 (AY there as an additional device) 128K: 50 Hz, 1773400 Scorpion/KAY: 50 Hz, 1750000 ATM Turbo: 50 Hz, 1750000 ZX Evo default: 48.83 Hz, 1750000ZX Evo 48K: 50 Hz, 1750000 ZX Evo 128K: 49.34 Hz, 1750000 Pentagon (f=14318000): 49.94 Hz, 1789750 (AY there as additional device) Pentagon 2.6bbLE: 50 Hz, 1792000 Unreal Speccy default: 50 Hz, 1774400 Without a doubt, 50 Hz is the most popular frame rate option. Many programs measure time using it. The main problem is with shred AY. GS was originally developed for Scorpion and KAY, so that it is logical to take the frequency from there - 1,750,000 Hz. Most likely this is and would be the best option. ZX Evo can emulate 50 Hz+ 1,750,000 in "48K" scan mode. Unreal Speccy can emulate anything, its default frequency is AY anyway does not correspond to anything, but the frequency is still 1750000 Hz is present in the list. As for branded 128K, I haven’t heard of GS was connected to them. So it seems like the only car where there will be problems - this is Pentagon. What options might there be for him? You can recalculate frequencies directly when recording them in AY registers. You can change the frequency table, but then they will leave Glides. You can tweak finetune in samples on GS, but then adjacent samples will be glued togethera little different than expected. If we play digital samples on the same AY, then we it is enough to take into account the number of clock cycles in the frame - after all, AY is usually synchronized with Z80. Pentagon is quite far from the ideal 70,000 clock cycles, 128K is somewhat closer, but not quite. Besides, maybe turbo mode must be turned on... So our player must measure the number of clock cycles in a frame and adjust accordingly frequency table for digital samples
Share your thoughts about the article