Author Topic: How to group many modules in one MO3 file  (Read 9740 times)

Mechakoopa

  • Guest
How to group many modules in one MO3 file
« on: 30 Mar '05 - 12:28 »
Example i have
song1.s3m
song2.s3m
song3.s3m
and i want to group song1.s3m,song2.s3m,song3.s3m
into songs.m03 can it do and how to do this

Dotpitch

  • Posts: 2871
Re: How to group many modules in one MO3 file
« Reply #1 on: 30 Mar '05 - 15:31 »
the only thing you can do with mo3enc is compress a regular mod/xm/it/s3m to mo3. if you want those three s3ms in one mo3, you need to load them in a tracker, put them behind eachother, make a new s3m of it and then make a mo3. it doesn't work like modpack, in case you thought that ;)

Mechakoopa

  • Guest
Re: How to group many modules in one MO3 file
« Reply #2 on: 31 Mar '05 - 03:44 »
the only thing you can do with mo3enc is compress a regular mod/xm/it/s3m to mo3. if you want those three s3ms in one mo3, you need to load them in a tracker, put them behind eachother, make a new s3m of it and then make a mo3. it doesn't work like modpack, in case you thought that ;)

Where can i download tracker

raina

  • Posts: 1163
Re: How to group many modules in one MO3 file
« Reply #3 on: 31 Mar '05 - 10:03 »
Where can i download tracker

There's a bunch of them over at the old MAZ Sound Tools site but for the best .s3m handling you'd have to use the original Screamtracker (3.21) which i didn't manage to find with a 2 minute google scan. If you need it badly, I'll pack it and send it to you later today. Of course you can use the tools on the MAZ site and save to a different format like .xm (with Fasttracker 2) or .it (with Impulse Tracker) which can then be converted to .mo3 with no problems.

The program you choose doesn't really matter, you're in for a lot of tedious work in every case. I just want to warn you if you are unfamiliar with trackers. The original PC trackers are all pure DOS programs, so you should run them either on an old computer with DOS/W9X and a sound card with Soundblaster compatible drivers OR with a brand spanking new machine capable of running the tracker in an emulated DOS environment such as DOSBox. The hardest part is the joining of the files. They're not exactly wave files you just copy and paste. Each file has its set of samples and patterns (or instructions how to play the samples) which you have to copy from one file to another one at a time. If the files use exactly the same samples, you'd only have to copy and renumber the patterns but if not, you also have to change all the sample references in the patters to correspond to their new numbers. This can be automated in the tracker  but you really have to learn how to use the program before you can do heavy editing like this.

Ok, so.. My aim was not to scare you off with the amount of work the "simple" operation you described will require. Instead I wanted you to consider whether it would be worth it or not. If you can live with the separate files, I suggest you do that but if you seriously NEED to do this, just post back if/when you need more help.

(Yay, my 100th post :)

Mechakoopa

  • Guest
Re: How to group many modules in one MO3 file
« Reply #4 on: 31 Mar '05 - 14:42 »
Okay, I've XM file now!
but
What tracker i should use?
and How to use?

I'm very very new to these

raina

  • Posts: 1163
Re: How to group many modules in one MO3 file
« Reply #5 on: 31 Mar '05 - 19:40 »
I'm most experienced with Fasttracker 2 since I've used it for 9 years. Therefore I'm fully qualified to guide you only if you decide to go with that. But alas, Ft2 has been said to be a bitch with modern computers. (I have no personal experience on how it behaves under DOSBox since I have a low end computer dedicated to oldskool tracking.) Fortunately all the trackers share the same principles. So maybe this will help you to a start...



You should familiarize yourself with the tracker you're about to use. If you want to skip the theory and jump in straight ahead, you should probably load some module in the tracker and hit the play button. Examine the tracker. Where are the samples you hear playing located? How are they triggered?

The pattern view is the most essential part of a tracker. There you see notes (such as A-3, C-4 and E-4) travelling upwards from the bottom of the screen. There's other data too such as instrument/sample numbers (important in your quest of joining the three modules), volume and/or effectcommands. A standard .mod channel entry could be for example:

Code: [Select]
C-4 01 C30That tells the tracker to play the note C-4 with sample 01 at volume 30h (hexadecimal).

In a Fasttracker 2 eXtended Module (.xm) there's a separate volume column and the entry could be something like:

Code: [Select]
E-4 07 38 800That means: play the note E-4 with sample 07 at volume 38h panned all the way to the left (8 is the panning effect, value 00 means 100% left).



The instrument/sample table is where the sound samples are loaded. Now, if you load a module and instead of playing it you tap the QWERTY keys on your keyboard you should hear something. The keyboard functions as a "piano". You can play the selected sample at any pitch you want. If you select a different sample from the list, you get to play that one. Now, if you load a different sample in a slot that is already in use, the current sample will be replaced by the new one. You can easily see (or hear) yourself how this works if you, for instance, find a bass drum sample and replace it with, say, a crash cymbal. Press the play button and hear the chaos that is created when every time a bass kick was supposed to tap the beat, a cymbal takes its place and makes the song practically impossible to listen to.


Then there's the pattern order. You might have noticed when the module plays that the pattern usually comes to an end around the figure 64 (or 40h). The song itself doesn't end there but instead, continues on to the next pattern that might be completely different from the last one. In a new empty module, the pattern order view usually is something like:

Code: [Select]
00 00That tells the tracker that when in songposition 00, play pattern 00.

You can add lines (songpositions) and change which patterns to use. Thus you make up the pattern order:

Code: [Select]
00 00
01 01
02 00
03 02
04 03
05 04
I think this should be pretty simple. The module now has 06 (00-05) songpositions with different pattern numbers associated with them. Now you would just have to load up some samples and insert some notes on the patterns (00-04) and you'd have a tiny little song ready. That's the basics (-pant-).



Now to the three-in-one-module-dilemma. Let's color code and oversimplify the three modules like this:

song1.s3m
song2.s3m
song3.s3m

Each exaple module has three songpositions, three different patterns and three different samples:

song1.s3m
pattern order:
00 00
01 01
02 02


sample table:
00 basskick
01 snaredrum
02 synthlead


song2.s3m
pattern order:
00 00
01 01
02 02


sample table:
00 monobass
01 majchord
02 minchord


song3.s3m
pattern order:
00 00
01 01
02 02


sample table:
00 sinchip
01 sawchip
02 sqrchip




I'd start with loading up song2.s3m. Then I'd save all its samples on the hdd with names like song2_00.iff, song2_01.iff and so on. You can use any format the tracker supports but I'd go with .iff because it supports 16bit samples AND retains loop points. Then (in Fasttracker 2) I'd save all the patterns with names like song2_00.xp, song2_01.xp...
When done with this, do the same to song3.s3m.

Then load song1.s3m. Now add songpositions to the pattern order and edit

Code: [Select]
00 00
01 01
02 02
to

Code: [Select]
00 00
01 01
02 02
03 03
04 04
05 05
06 06
07 07
08 08

Now load the previously saved patterns like this: pattern song2_00.xp goes to pattern 03, pattern song2_01.xp goes to pattern 04, ..., pattern song3_02.xp goes to pattern 08. Now you have the songs glued together. Songpositions and patterns 00..02 contain the original patterns from song1.s3m, 03..05 have 00..02 from song2.s3m in them and 06..08 is song3.s3m, like this:

pattern order:
00 00
01 01
02 02

03 03
04 04
05 05

06 06
07 07
08 08


We're not done yet. If you try to play the song now, it plays fine for the first 3 patterns. Then it starts to go wrong since in song2.s3m sample 00 was monobass and now it is basskick and so on..

Next you have to load the samples you saved before and use different sample slots. Sample song2_00.iff goes to slot03, sample song2_01.iff goes to slot 04, ..., sample song3_02.iff goes to slot 08. Build a sample table like this:

00 basskick
01 snaredrum
02 synthlead

03 monobass
04 majchord
05 minchord

06 sinchip
07 sawchip
08 sqrchip


Playing the song now will still sound wrong because the latter parts (song2 and song3) are still using the same samples as the first part. You have to remap the samples for songpositions 03..05 and 05..08. For 03..05, sample 00 becomes 03, 01 becomes 04 and so on.. For songpositions 06..08, sample 00 becomes 06 and so forth. Every tracker has its own implementation of sample/instrument remapping (if any) so I won't go into that just now. Once the samples are remapped, you should have all the songs in one module that you can save to (let's pick a pretty color) songs.xm and convert it to songs.mo3.

Oh, god. I've been typing this for two hours and it looks like a total chaos and a complete mess. I just have to stop right now. Hope this helps a bit.
« Last Edit: 9 Jul '05 - 09:50 by raina »

DTTVB a.k.a. Mechakoopa

  • Guest
Re: How to group many modules in one MO3 file
« Reply #6 on: 2 Jul '05 - 07:51 »
 ;D ;D
Now I can make it
I use Modplug Tracker

I just copy all sample from the another music to the first one.
Copy the song data
Then change its sample
Add ?-? ??? Bxx at the end of song
then Encode to MO3

Thanks for raina for Fasttracker.
I will try it...