Users browsing this thread: 2 Guest(s)
FF1 - Battle Scene (Song Hack)

#11
Posts: 3,966
Threads: 279
Thanks Received: 234
Thanks Given: 56
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
(10-19-2018, 09:09 PM)Lightning Wrote: By the way, when you say it "affects multiple tracks", do you mean to say that certain commands can carry over from one music track to another?  I thought whatever I edit in the one song was specific to that one song?

I think she is referring as channel tracks, a song being made of several tracks, usually the same amount of channels being used. The reverb can carry over from song to song though but I don't think this is what she meant. Removing a command in a channel affect the one after and the channel pointers must be modified.
  Find
Quote  

#12
Posts: 311
Threads: 20
Thanks Received: 0
Thanks Given: 0
Joined: Dec 2017
Reputation: 2
Status
None
(10-19-2018, 10:09 PM)madsiur Wrote:
(10-19-2018, 09:09 PM)Lightning Wrote: By the way, when you say it "affects multiple tracks", do you mean to say that certain commands can carry over from one music track to another?  I thought whatever I edit in the one song was specific to that one song?

I think she is referring as channel tracks, a song being made of several tracks, usually the same amount of channels being used. The reverb can carry over from song to song though but I don't think this is what she meant. Removing a command in a channel affect the one after and the channel pointers must be modified.

Ah, I think I get it.  I thought maybe there were more bugs I had to be wary of, which would not surprise me; I am still finding new bugs in this game after 25 years!
  Find
Quote  

#13
Posts: 27
Threads: 2
Thanks Received: 0
Thanks Given: 0
Joined: Jul 2018
Reputation: 6
Status
Mental-Break
"track" here means the data for one of the SPC700's 8 channels. Every song has 8 tracks, though some might just be empty. Editing things like echo is fairly simple because you just change one thing at the start of the song, but transpose has to be done for each track individually -- which means you would probably need to add some bytes -- which would upset all the loop pointers in the song, which is not fun times. I suggested using MML because it figures loop pointers automatically, so it's much easier to make very small edits without worrying about whether you are adding or removing bytes.
  Find
Quote  

#14
Posts: 311
Threads: 20
Thanks Received: 0
Thanks Given: 0
Joined: Dec 2017
Reputation: 2
Status
None
(10-20-2018, 02:21 AM)emberling Wrote: "track" here means the data for one of the SPC700's 8 channels. Every song has 8 tracks, though some might just be empty. Editing things like echo is fairly simple because you just change one thing at the start of the song, but transpose has to be done for each track individually -- which means you would probably need to add some bytes -- which would upset all the loop pointers in the song, which is not fun times. I suggested using MML because it figures loop pointers automatically, so it's much easier to make very small edits without worrying about whether you are adding or removing bytes.

Yes, and you were right.  I had not messed with an MML file until now, but it was extremely easy, and I didn't have to worry about the loop pointers. I now have the track sounding just the way I want!  Thanks again.
  Find
Quote  

#15
Posts: 2,548
Threads: 98
Thanks Received: 147
Thanks Given: 156
Joined: Aug 2009
Reputation: 52
Status
Nattak\'d
(10-19-2018, 08:57 PM)emberling Wrote: Many of Gi Nattak older songs, in addition to the potentially broken echo, accidentally include %k1 on all tracks (D9 01) which makes them all one half-step higher than his source, and so usually inaccurate to the original. The version I sent you I checked against NES, GBA, PSX releases and was correct relative to all; I also shifted the FF6 intro to match this by lowering it one octave and using %k10 to transpose up 10 semitones from there. If you want something different feel free to play around with it but you should probably do it via MML rather than hex editing as it affects multiple tracks and that's very slippery with hex. MML tools are here.

e.g. add %k1 after each {1}, {2}, {3} etc, and search and replace all %k10 to %k11 and %k0 to %k1, to return to incorrect pitch of unmodified version. To return FF6 intro to original pitch change all %k10 to %k12 (or delete all %k## and update octave, if you prefer, but this is easier). etc.

Woah, wait a minute here... %k1 is not good? I'm pretty sure every song I ever did has it, as it's in the template MML file I use and I've never looked into it or thought about what it does. So this makes everything a different pitch?! I should remove them in other words? When would the command be useful then I wonder.


We are born, live, die and then do the same thing over again.
Quote  

#16
Posts: 27
Threads: 2
Thanks Received: 0
Thanks Given: 0
Joined: Jul 2018
Reputation: 6
Status
Mental-Break
when is it useful? many times:
- when transcribing from source material that is itself incorrect (looking at you, spc2it)
- when combining two different songs that are originally in different keys (e.g. ff1 battle + ff6 battle intro)
- can save space by reducing number of < > needed, since it shifts the effective octave boundaries (this is probably not worth the trouble)
- tricks with loops: l16 [crrcrrcr %k2] %k0 to play a pattern on c and d
- tricks with subroutines:
Code:
from tantal, at ~1:17
$0]
{2}
%k5 $253 [[4v127cv96cv64c][v127cv96c]] j1,0
%k11 [j2,261;253 $261 %k0
{3}
%k9 [j2,357;253 $357
%k4 [j2,361;253 $361 %k0
similar to the loop example, but plays the pattern as a chord of F+A then E+B.
  Find
Quote  
[-] The following 1 user says Thank You to emberling for this post:
  • Gi Nattak (10-20-2018)



Forum Jump:

Users browsing this thread: 2 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite