Mod2PSG2 Mod2PSG2 is a tracker for Sega Master System and Game Gear, made by KonTechs and Work In Progress. It was originally made for GGT, a Turrican clone for the Game Gear. Thus it's a complete sound system for music and sound effects, the first one publicy available for SMS/GG. Mod2PSG2 modules are quite simple and limited, because the focus was on high playback speed and low memory usage. See the 'How to use Mod2PSG2' section for more details. Mod2PSG2 introduces 3 new file formats: PSGMOD, EPSGMOD and EPSGSFX. PSGMOD is the standard module format which is used to load and save modules. EPSGMOD and EPSGSFX are export formats for playing back music and sound effects on Master System and Game Gear. A music and sound library for the export formats for WLA Z80 is supplied in the WLA-directory, including documentation and an example. Currently this library can be only used with WLA Z80. If you need support for another assembler/compiler, let me know. Mod2PSG2 can import 4 channel Protracker modules (.mod) and VGM/VGZ files. Both of them can't be imported perfectly. .mod files use samples and thus they are very hard to be played on a PSG sound chip. VGM/VGZ sound quite well, but the noise channel can't be correctly imported, and the notes are hard to read. VGM and MID files can be exported. VGMs sound perfectly, but MIDs of course sound somewhat strange. The Mod2PSG2 website is at: http://mod2psg.kontechs.de __________ / Contact / ========== If you have any questions, comments, suggestions, etc. about Mod2PSG2, you can send me an eMail to martin _at_ kontechs.de. eMails are very welcome. I will answer every eMail I get, except the ones where I don't have anything useful to add (like "Wow, what a great program. Thanks :)"). ______________________ / How to use Mod2PSG2 / ====================== The tracker is divided into 5 columns. The first 4 are for the PSG sound channels. The last column is for speed-commands. The PSG columns are again divided into a left and right part. The left one includes the frequency of a new tone, expressed both as native PSG frequency value and as note name. The right part includes the volume and instrument of a new note, and optionally a vibrato effect. Channels 0 - 2 use rectangle waves with 1024 different frequencies. Channel 3 is a white/periodic noise channel with 4 different frequencies: Frequency | Code ------------------ high | 0 middle | 32 low | 64 channel 2 | 1024 But, don't use the channel 2 frequency mode in a game with sound effects, else the noise channel will have a wrong frequency if a sound effect is played on channel 2. Of course this isn't a problem in a title screen or so without sound effects. And you can also use it for sound effects that are played on both channel 2 and 3. All 4 channels have 16 different volume levels. The volume of a tone can only be set with a new tone, there's no effect for it. The instruments are very limited. There are only 16 of them, 4 for each channel, ie. 0 - 3 are for channel 0, 4 - 7 for channel 1, etc.. Each instrument contains a simple volume envelope, with a start volume and 3 add/delay pairs. For each pair, the add-value defines what value is added to the volume of the envelope per frame, and the delay-value defines how long (in frames) the add-value is applied. It's a bit hard to understand, so try around with it and see what happens. The speed can be set to a value between 1.00 and 31.875 (in 0.125 steps), by setting a new speed-command in the speed-column. The startup speed is 6.00. The value defines how much frames are waited between pattern lines (1 frame is 1/60 sec. in NTSC, and 1/50 sec. in PAL). Each pattern can have its own length between 1 and 256. If you decrease the length and then increase it, you'll see that the bottom part of the pattern isn't deleted. Sound effects are played on channel 2 and 3. So, you should design your modules to have the main parts in channel 0 and 1. Sound effects can be either on channel 2, on channel 3, or on both channel 2 and 3. If there is one sound effect for channel 2 only, and one for channel 3 only, they can be played at the same time. If a sound effect is for channel 2 only, it does of course not interrupt channel 3. __________ / Control / ========== To navigate through the module, use the cursor keys and the Home/End/PageUp/PageDown-keys. If you press the Shift key at the same time, you can resize the selection frame. Alt + Up/Down: Resize the current pattern Return: Move all notes under the cursor one line down Backspace: Move all notes under the cursor one line up Space: Move the cursor 'Linestep' lines down Shift + Space: Select all lines of the current columns F1 .. F8: Select the current octave CTRL + p: Play/Pause CTRL + z: Undo CTRL + y: Redo Delete: Delete notes CTRL + x: Cut to clipboard CTRL + c: Copy to clipboard CTRL + v: Paste from clipboard Numpad +: Increase frequency by 1 Numpad -: Decrease frequency by 1 Numpad 4: Increase frequency by 25 Numpad 5: Decrease frequency by 25 Numpad 7: One octave down Numpad 8: One octave up In even columns --------------- The keys for setting new notes are like on a piano. z../ | a..#: Set notes from C to E (from the next octave) q..+ | 1..0: Set notes from C to G (from the next octave) y..,: Set a noise channel note (y..c: white noise, v..n: periodic noise) y../: Set a speed-command F9 /F10: Note up/down F10/F11: Octave up/down In odd columns -------------- v/V: Increase/decrease the volume of the selected note(s) (from 0 to 15) t/T: Add vibrato, or increase/decrease existing vibrato (from 0 to 15) y: Delete vibrato w: Toggle between WhiteNoise und PeriodicNoise i/I: Increase/decrease instrument(s) of the selected note(s) (from 0 to 3) __________ / Changes / =========== [1.0] - first public version