Language…
17 users online:  Anorakun, bradcomp, DanMario24YT, DasFueller, DimeR, Green, GRIMMKIN, Kwat1, Rykon-V73, Serena,  Shoujo, signature_steve, SMW Magic, steelsburg, Tulip Time Scholarship Games, vktr,  yoshi3706 - Guests: 287 - Bots: 379
Users: 64,795 (2,373 active)
Latest user: mathew

Official SMW Music Porting Help Thread (Read first post!!)

First-time SMW music porter here. I've managed to create this port (of FE6 Shadow Approaches) based on looking at existing music text files and what I remember from a tutorial from 4+ years ago.

Anyway, it doesn't sound quite right to me, so I'm looking for advice on how to improve its quality. Different instruments? The various special hex commands that I'm unfamiliar with? Did I make a mistake on the notes? Or is this just as good as it gets with the SMW soundfont...?

–=–=–=–=–=–=–
Advynia: a Yoshi's Island editor - Alyssa's Unlikely Trap demo 3
Originally posted by Decoy Blimp
So I'm trying to fix an old port but one channel has an instrument who's pitch is two high when I fix it.

Code
$F3 $24 $0A
$ED $0F $E0


Are these bytes the ones I would modify to fix this issue?

Is that Addmusic4?
Hoping that I'm not saying wrong things, $F3$XX$YY used to define a custom sample. $XX is the sample number from the .bnk used, and $YY should be the tuning. Lowering your $0A by 4 should make it sound lower by 1 octave. Again, not 100% sure. I could swear the command for defining samples with am4 was $FA$XX$YY, but eh, I'm too old to remember it lol.
...oooor, if you are doing an AMK conversion, you can simply replace the whole set of bytes you posted there with an #instruments definition, specifying ADSR and tuning of your .brr. That'd require you to convert your .bnk into many .brrs, eventually tuning them back properly.

$ED$0F$E0 is its ADSR. It has nothing to do with tuning/sample pitch.
Originally posted by Zeldara109
First-time SMW music porter here. I've managed to create this port (of FE6 Shadow Approaches) based on looking at existing music text files and what I remember from a tutorial from 4+ years ago.

Anyway, it doesn't sound quite right to me, so I'm looking for advice on how to improve its quality. Different instruments? The various special hex commands that I'm unfamiliar with? Did I make a mistake on the notes? Or is this just as good as it gets with the SMW soundfont...?

Just lemme point out right now that Addmusic 4.05 is deprecated :P You want to use AddmusicK now, since it's far more powerful. (You can still insert AM4 ports in AMK, you just need to add #am4 at the top of the txt which is what I did to listen to your port.)

On to the song itself, it's a very decent first attempt to be fair! I think you feel the songs "lacks" something because the original sounds fuller. Here are the differences I noticed between the original:
-The song has a crash cymbal, which adds a lot to the sound. SMW doesn't have one, but usually you can get away without it.
-The melody that's playing in your channel #1 is (or seems to be?) octaved in the original, meaning another channel is playing the same notes at the same time but an octave lower (or higher, but it's lower in this case).
-The song uses panning, which means some channels are playing louder on one speaker than the other. I think some of the long @1 notes (like channel #0) are playing on the left until the @6 kicks in, while channel #1 is playing on the right.
-There seems to be a "bass" channel missing in your song. It's constantly playing r4a4a4 for the most part, but I suggest you find a MIDI that has that channel as well so you don't have to manually write it all, since it gets a little more complex.

Phew, I hope you understood some of that, I tend to get a little technical sometimes. The port is a good first attempt like I said, since nothing really sounds off and it's for the most part very well optimized. I also like how you used channel #5 instead of #4 to avoid SFX cutoff #w{<3} (Many porters don't give a crap about it and it's annoying imo).

I suggest you try using AMK's syntax the next time you make another song. It's virtually the same, but it includes some extra hex commands and notation that makes life a lot easier and with better results. Also, channel #4 becomes SFX-free so you can use that as much as you want too!!! AMK's readme.html is extremely complete and it explains every single regular and Hex command you have available. Good luck #tb{'U'}
LINKS Twitter | YouTube | SoundCloud | Fortaleza Reznor
to hear birds and see none.
So when I use SPCtoMML, sometimes I get stuff like this in the txt:

Code
(!1)[$F4 $09]
(!2)[$ED $80 $9F]
(!3)[$ED $7C $F2]


Typically when one of these pops up, something is wrong with said song (this isn't always the case if there aren't many of these), but what are these things?
Originally posted by Decoy Blimp

Code
(!1)[$F4 $09]
(!2)[$ED $80 $9F]
(!3)[$ED $7C $F2]

what are these things?


I'm going to ignore the VCMD Maps and assume they're AMK/AMwhatever compatible.

Those, (!n)[command], are remote codes.
(!1)is restore instrument, last two are Envelope commands.
(!2) being GAIN, and (!3) ADSR.
Why assume? They're explained in the readme.html. Look up under Syntax Reference. Basically they're a special kind of label loops (that could explain why you "get errors", because if you use (!1), you can't use (1) anymore) where you can place any non-note commands and call/trigger them in specific ways, such as at the beginning of a note, a certain amount of time after the note was played, a certain amount of time before it ends, as soon as the note is keyed off (aka during rests), and "right now". Like I said though, the readme.html explains it. :P
LINKS Twitter | YouTube | SoundCloud | Fortaleza Reznor
to hear birds and see none.
Originally posted by MaxodeX
Just lemme point out right now that Addmusic 4.05 is deprecated :P You want to use AddmusicK now, since it's far more powerful. (You can still insert AM4 ports in AMK, you just need to add #am4 at the top of the txt which is what I did to listen to your port.)

Doesn't AddmusicK have various issues? Like improper P-switch/star music interaction (may play the wrong one, or revert to the level's music, when both are active at once), and preventing other patches that modify the music (which would be an issue since I'm situationally disabling P-switch/star music in some levels)? Also in recent hacks that I think use it, sometimes the status bar glitchily vanishes with noticeable lag when misc music starts, and sometimes the timer speed-up isn't properly reset, resulting in faster goal and overworld music.

Not sure if I'm mistaken, but I'd rather not deal with those bugs. My hack's soundtrack is mostly finished already, and given how this porting experiment turned out better than I anticipated, I'll probably be porting the last few myself. (Before anyone points out that 4.05 never retains timer speed-ups when the music changes, I consider that a less noticeable issue.)

Originally posted by MaxodeX
-The melody that's playing in your channel #1 is (or seems to be?) octaved in the original, meaning another channel is playing the same notes at the same time but an octave lower (or higher, but it's lower in this case).

It seems that does help the music be "fuller", to duplicate the first 32 measures of channel #1 an octave lower. Thanks. It only seems to work if I re-create the [rab-gaf] loop though, rather than reusing loop (1)?

Originally posted by MaxodeX
-There seems to be a "bass" channel missing in your song. It's constantly playing r4a4a4 for the most part, but I suggest you find a MIDI that has that channel as well so you don't have to manually write it all, since it gets a little more complex.

I don't hear this at all in the original though. Is it related to the [a2.]30 I have at the start of channel #3?

I don't hear panning either, but that's probably my laptop.

I've never found FE6 MIDIs. Possibly because the game's a Japan-only release that's known by four different English names (number, official translation/current translation patch, old translation patch, and romaji).

Originally posted by MaxodeX
Phew, I hope you understood some of that, I tend to get a little technical sometimes. The port is a good first attempt like I said, since nothing really sounds off and it's for the most part very well optimized. I also like how you used channel #5 instead of #4 to avoid SFX cutoff #w{<3} (Many porters don't give a crap about it and it's annoying imo).

That was technical?

As for channel #4/#5, I learned about it back when I was attempting to figure out how to avoid a random (but frequent) elongated jump sound effect in Frozen Volcano, a massively complicated Jimmy52905 composition that I can't follow at all within the .txt. It's also hard to test which channel would be the best to swap into #6(?) since the glitchy sound doesn't occur consistently. I never did manage to fix that...

–=–=–=–=–=–=–
Advynia: a Yoshi's Island editor - Alyssa's Unlikely Trap demo 3
Oh boy quotes...
Originally posted by Zeldara109
Doesn't AddmusicK have various issues?

Haven't tested the P-switch/starman thing but the status bar does temporarily vanish if the engine is loading data into ARAM presumably, e.g non-global song. There are fixes to some of what you've mentioned but it's important to learn it's (AMK) advantages and disadvantages.

Originally posted by MaxodeX
-There seems to be a "bass" channel missing in your song. It's constantly playing r4a4a4 for the most part,

Originally posted by zeldara109
I don't hear this at all in the original though. Is it related to the [a2.]30 I have at the start of channel #3?
I don't hear panning either, but that's probably my laptop.

Correct, CH 3. There is rudimentary panning but it's hard to notice since it's only one brass.
Originally posted by MaxodeX
Phew, I hope you understood some of that, I tend to get a little technical sometimes.

Originally posted by zeldara109
That was technical?

To the average joe probably. However it seems you know more about this than anticipated #fim{XD}

One more.....
Originally posted by MaxodeX
Why assume?

I don't know if SPCtoMML generates AMK compatible syntax (a lot of it shared with the old VCMD map) but apparently yes. 2nd time I've been told to read the readme, it seems through blindness I can get a "unique" bleeps and bloops from the sound engine.
Originally posted by Zeldara109
Doesn't AddmusicK have various issues? Like improper P-switch/star music interaction (may play the wrong one, or revert to the level's music, when both are active at once), and preventing other patches that modify the music (which would be an issue since I'm situationally disabling P-switch/star music in some levels)? Also in recent hacks that I think use it, sometimes the status bar glitchily vanishes with noticeable lag when misc music starts, and sometimes the timer speed-up isn't properly reset, resulting in faster goal and overworld music.

I don't think it'd be the current standard Addmusic if it was still so buggy. I believe there are a few patches that have incompatibilities with it but I haven't looked into that lately. It's not nearly as buggy as it used to be though.

Originally posted by MaxodeX
It seems that does help the music be "fuller", to duplicate the first 32 measures of channel #1 an octave lower. Thanks. It only seems to work if I re-create the [rab-gaf] loop though, rather than reusing loop (1)?

Oh yes, whenever you call a label loop, it plays at the same octave the original played at. You can get around this by using a custom instrument of the same sample tuned an octave lower, but that's pushing it for now.

Originally posted by Brozilla
Originally posted by zeldara109
I don't hear this at all in the original though. Is it related to the [a2.]30 I have at the start of channel #3?
I don't hear panning either, but that's probably my laptop.

Correct, CH 3. There is rudimentary panning but it's hard to notice since it's only one brass.

Actually no, it's something like this. Although listening closely enough it does sound like what you already have on channel #3, but with a slow attack and tremolo...

Originally posted by zeldara109
That was technical?

I tend to get technical when I talk about porting; this may or may not have been the case.

Originally posted by zeldara109
As for channel #4/#5, I learned about it back when I was attempting to figure out how to avoid a random (but frequent) elongated jump sound effect in Frozen Volcano, a massively complicated Jimmy52905 composition that I can't follow at all within the .txt. It's also hard to test which channel would be the best to swap into #6(?) since the glitchy sound doesn't occur consistently. I never did manage to fix that...

I'm fairly sure this doesn't happen anymore on AMK.
LINKS Twitter | YouTube | SoundCloud | Fortaleza Reznor
to hear birds and see none.
How can I make PetiteMM's txts works?
Add a #0 at the beginning, and every time you find a ;, replace it to #x (where x is a number from 1 to 7). Later add #amk 2 at the start of the txt, and you can now insert the song into AMK.

Note that PetiteMM exports the tempo as BPM instead of how SMW handles tempo, which means the tempo you see at the beginning of the MML will not do. You can convert it to SMW tempo by multiplying the value PetiteMM exports by 5/12 (approximately ≈ 0,416).

Finally, PetiteMM exports ties the wrong way: instead of exporting, say, c1^8, it exports c1^c8 instead, which adds an extra note and will cause desync. You can fix this by hand, but chances are that an entire txt will be riddled with these instances so it can become quickly tedious. Using Notepad++ is recommended for this, here's how in case you want to try:

1. Open the txt in notepad++ and press CTRL+H.
2. On the bottom left corner of the window, check the "Regular expression" option under "Search Mode".
3. In "Find what", paste this: \^[a-gA-G][\+-]?.
4. In "Replace with", write a single ^.
5. Click "Replace all" and you're all done.
LINKS Twitter | YouTube | SoundCloud | Fortaleza Reznor
to hear birds and see none.
What's a good way to pull off a cymbal effect with SMW's samples? I tried using the nXX stuff from the ADSR thread, but it sounds more like a distorted hihat than a cymbal, and it won't turn off no matter how many times I redefine the instrument. Is there a way I can do it with @22 or @23?
New to porting so my ? is I used PetiteMM to get my text file after that your suppose to edit it right? how would I do that and what with? since this is no longer around smwhacking.de/music/corrector and you can't use anymore smwr.bplaced.net/music.

Here is my text from PP it has no ;

t120o4>>>g+12<<a192>>>g48<<<<<<<f+96r24r96
>>>>>g16>e32>d192<b12r192<<<c192>>>e48<<g16
>f192>>g16^g96r64<b192
>f12^f192<<b192>g+16^g+64g96<a192>>c+16^
c+64<<<<<<<d+64<g+96r16r96>>>>>f192>a12
>c192a192>g16^g192<<<<<<<d+96r192>>>>c96
<<f16^f64>>>g12^g192d96>f+12a12^a192<<g192
>>e192>f16^f96r64<c192>c+192g16^g64<<c192
g16^g96>e64b192>d16^d192<<<<<<<d+96r96>>>
>>>e192<<<c64>g96>>>d32r64r96<<f192>>c+96
g16r96
<b192d192>f12<<c192<c12^c192a192>>>c+96
g16r64d192<b16^b64c96e96<c16^c96>>e192
c+12r192<f192<<<f12^f192>>>>d192<b192<<<<
<<<g+96r16r192>>>>>>>e192>c+96<<<<<<<>>>>>f192>a12g96>d192<<<<>>a192>>c+192e96<<<f64r24r64f16.>d192>>
f+192<<<<
>>c+12<<f96>f192>f+16^f+64<<e192>>
d12^d192c192f+192<<<f12a

Your layout has been removed.
How can I solve the "Note's pitch was too high" error?
Depends on where AddmusicK says the error is. Find whichever channel the line is in, and try decreasing that channel's octave.
LINKS Twitter | YouTube | SoundCloud | Fortaleza Reznor
to hear birds and see none.
Is possible convert other video game music formats like VGM or PSF to SPC?
If I recall correctly you can probably convert PSF to midi, but you can't just convert it to SPC. MP3 to midi converters, if the exist, will not give you good results, so don't use them.
I'm having a problem, when I insert the PetiteMM's they become a mess, how can I make decent ports with this tool? Or am I doing something wrong? halp
Originally posted by hacker666
I'm having a problem, when I insert the PetiteMM's they become a mess, how can I make decent ports with this tool? Or am I doing something wrong? halp

That's a little too vague a question ... we have no idea how your txt looks, the MIDI you used, etc., and it simply sounds like you don't know where to start with the mml fixing, so in the meantime I'll just direct you to Wakana's music porting tutorial and then you're free to come back should you have more specific problems. :P
LINKS Twitter | YouTube | SoundCloud | Fortaleza Reznor
to hear birds and see none.
I've been trying to insert this old port, but it seems like some channels don't work after insertion. For comparsion I included the original .txt and SPC and the AddmusicK's SPC

Link

Also is $0DDA used for anything after using AddmusicK on the rom?
Check out Team Hack Fix/Translations' thread full of fixed and translated SMW hacks!

Wanted Permabanned or Dead by new staff team