My tutorial set is in progress, but then I'm way ahead and if I post it you guys may not understand much, therefore I'm waiting for thethethethe. As for FontEd, its done... Just without support for Fire Red, Leaf Green and Emerald. No, it cannot import .ttf, but the font data are saved to binary files.
Well, with the instrument wavs, you want to check two things.
1) There are actually three kind of music datas in Pokemon - Regular (First row info row, second row wav. offset, third row property row, which always works normally if set as FFFF FF7F) Two Offset (First row info row, second row offset to intstruments (NOT THE ACTUAL WAVS!!!), third row programming offset), and Generated (First row tells the generator what to do, second and third rows are basically blank).
Golden Sun's instruments, with the important exception of the Drum Kit and several generated instruments (As far as I know they are Lead 1 (Square); used in battle themes and the intro of TLA; Lead 2 (Sawtooth); used only in Saturos's battle theme I believe; Lead 4 (Charang); I'm not sure if I have the midi number right on this one, but it's the Oricana-like instrument used in Ivan's theme and Mars Lighthouse; and I don't remember what the midi number for this one is but it's used in Garoh and sounds like a low whistle).
The pan flute is not one of these. So continue.
Find the flute offset (or, you can just add it somewhere in your voicegroup). Let's say you want to import the pan flute at 0x8700000. Simply copy and paste from Golden Sun (I don't remember the exact offset at the moment - I'll get it to you ASAP). Then, add the offset into your voicegroup somewhere. You know how it goes.
2) If you copied it correctly.
A very important thing to note is that the first four rows of the wav. tells VERY important information about an instrument.
Here's a sample I made up:
Okay, the first row should always be a "0000 0000" or a "0000 0040". The former tells the instrument that it should not repeat the sound. The latter tells the instrument that it should repeat the sound for as long as the note is held (the difference between a snare and the String Ensamble, for example).
The second row has some random stuff in the first halfword. Don't know what that all means so skip it. The second halfword tells you the frequency for the sound. Golden Sun's frequencies, unlike Pokemon's, are all set at the same value (It's 0x0158). To transfer it to Pokemon, you may need to adjust the frequency. To make it an octave higher, double this number. To lower it an octave, half it.
The third row is only used if the first row reads "0000 0040". The third row tells the instrument when to begin its repeat sound. The fourth row tells it how many bytes long the sound is (in Hex, of course).
Sometimes a sound still won't work. Try moving it. Some of my sounds are located around 0x8280000, where the old maps used to be (which were moved using Advancemap).
Most of Golden Sun's instrument wav.s range in size from like 2300 bytes (Like in instruments like the Celesta) to over 16300 bytes (like in the String Ensamble)! The Pan flute is smaller, though, around 9470 bytes. Most of the time, the end of an instrument is loaded with 0x00 bytes, the quietest sound.
Oh yes, for some reason I forgot to tell you - I was really tired when I sent you that last PM. I really had no clue what the hell I was thinking then XD Don't worry, I understand the Tutorial just fine, and I got it to work right on my first go.
Well, you can't change an actual wav file's volume without using Wav editing software, but yes, there is a way to change volume.
For example, I'm assuming you're using a clean Ruby rom.
Open up sappy, and load the song. For this simple tutorial, I'll be using the Regi Battle Song. Let's say that I want the first instrument to be super loud. What I would do is press play, then press stop right after that. I'll not only get the offsets to the individual tracks (which you already know), but I'll get a bunch of other junk too.
Some things you will see:
Rel - I'm not entirely sure what this is.
Len - Length of the note.
Note - Note number/value
Velocity - Not entirely sure what this is either.
? - Well, nobody really knows. Maybe just a buffer.
Mod - Modulation, it's used in many Golden Sun's songs, but far less often in Pokemon's. This affects how the song sounds. Invalid modulations produced by Sappy's "export Midi" command crash Sappy.
Pitch - Used in pitch bends, such as in Magma Rock (I think it's used in Fog of Mt. Pyre but I'm not certain)
Pan - Pan is whether you hear the song from the left speaker or the right.
Now here comes the important parts:
Voic - Voice number. Same as midi number minus 1. For example, Lead 1 (Square) is Midi number 81, but in Sappy, it displays 80 (this is because midi numbers usually start at 1, but Sappy and the GBA's music system begin at 0).
Vol - This is what you're looking for. This is the volume for a track. For the first track of the song mentioned above, it says the volume is 80 (Hex 50).
So we go to our first track, which is located at 0x86ACA58. Here we see:
Now, the italicized part is the instrument number. Yes, you can change instruments a lot easier now!
The bold part is where most likely our volume is located.
The underlined part should NEVER be changed.
Now, I change the bolded place to 0x7F. This is the loudest a track can be. Now the track is much louder than the other tracks. Changing it to 0x01 is the quietest you can make it, so, if trying to make a track quiet, try going with a lower hex number than the rest of the tracks.
By the way, it should be noted that this works only most of the time. If the volume doesn't change, it might be that Sappy messed up on finding the volume of the song. Look for it byte by byte then (it's a real pain but it shouldn't be far from where I pointed out).
Darn you misunderstood me as well? Hence, the question "Can you open the tileset in my tool?" LOL
Anyway, since you don't get it I might as well explain Amap outputs '.dib's' which is a type of bitmap while my tool supports .raw, .bin etc files. Bitmaps and those are completely different. Amap automatically compresses the tileset once you import it.
Lol, it's okay, I just realized it right after I sent the PM
I'll see what I can do. Who knows, we could have just found some other programming stuffies. The GS:TLA's programming is already in my rom - I just need to find the pointer to the old programming so I can repoint it to the new.
Yup. I improved it I didn't plan on releasing it yet XD There's still support to add for Fire Red, Leaf Green, and Emerald. Its finished if there wasn't FR/LG/E lol, but if you have any cool ideas - feel free to share hehe.
Thanks, you've been really nice. You know, I have Ruby so I always try to make it supported first but in graphics Fire Red is nice
1. You cannot touch all your teeth with your tongue.
2. All idiots, after reading the first truth, will try it.
3. And discover that the first truth is a lie.
4. You're smiling now because you're an idiot.