Users browsing this thread: 1 Guest(s)
SPC topic

#21
Posts: 2,549
Threads: 98
Thanks Received: 147
Thanks Given: 159
Joined: Aug 2009
Reputation: 52
Status
Nattak\'d
(12-18-2011, 02:04 AM)Madsiur Wrote:
(12-17-2011, 08:57 PM)Gi Nattak Wrote: Here's my very first 100% composed (not injected) SPC hack. Surprised

My Home is the main town theme from Breath of Fire 2.

Next on my list is FF7's 'Costa Del Sol', I believe. XD


Very good job! I'm starting spc compostion tonight..I want to eventually compose FFVII tracks too for FFVI such as "Holding my thoughts in my heart" and "Interrupted by fireworks".

Which midi sequencer do you use to map the song? I suppose you map the song then write down the notes, their length and the length of the rests between them for each midi channel of the song?

Also, I have a bit of a hard time with music theory...What are the values of the notes with a question mark? Are they the black notes on a piano roll?
Code:
C              do
C# /Db         ?
D              re
D# /Eb         ?
E              mi
F              fa
F# /Gb         ?
G              so
G# /Ab         ?
A              la
Bb             ?
B              ti

While most people will say that Cakewalk SONAR is the best sequencer, I find Anvil Studio to be much more user friendly, and it shows the piano roll. So that's what I use.
Looking here at the musical reference guide provided by MQ in the tutorial, all those notes are accounted for there, I'm not sure about the whole do re mi fa so la ti thing, not sure what your looking at there, I just know that knowing that is not needed.

I will say now that composing music into the game requires a semi-advanced knowledge of musical notation, like what notes are what, octive changes, rests, dotted and tied notes, and all that. In other words, if one can not read music, one could not compose a song at all into the game, simple as that. But, it's not that bad really, because...

...nowadays one could just watch a Youtube video tut on musical notation, and use Google Images for a 'cheat sheet' that shows things like tied notes, 16'th and 32'nd notes, all that good stuff. This song I did was somewhat simple, considering it's 4/4 and doesn't have crazy shit going on like Battle on the Big Bridge that MQ did, I have no idea how he did that, he's crazy lol, in a good way. I've seen many insane looking midis, like Golbez' Theme which is basically 4 tracks of harmonizing minor chords, and pretty much every battle theme with fast drums. Drums are a real b*t*h.

But yeah, it's all there in the music hacking tut, it explains it better than I ever could, if you know musical notation, you can figure it out =). GL!


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

#22
Posts: 3,970
Threads: 279
Thanks Received: 236
Thanks Given: 58
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
(12-18-2011, 03:41 PM)Gi Nattak Wrote: While most people will say that Cakewalk SONAR is the best sequencer, I find Anvil Studio to be much more user friendly, and it shows the piano roll. So that's what I use.

I tried with Reason but I couldn't assign an instrument to the midi channel, then I tried with Cubase and the program assign automatically an instrument to all your different midi channels. Plus the program even writes the notes letters on the notes that are played on the piano roll, which make the reading a lot easier, as seen here.


I tried to experiment a bit with the program and here is the result: Cecil's town (YouTube video).

I don't consider it an arrangment as it didn't spent much time on it and the 3rd channel was muted.


I gave up (for now) trying to do an import, as I couldn't locate the spc core in SEO. Playing with Cubase however developed my liking to make arrangments and maybe I will be able in the future to give JCE3000GT some competition.Laugh

  Find
Quote  

#23
Posts: 2,549
Threads: 98
Thanks Received: 147
Thanks Given: 159
Joined: Aug 2009
Reputation: 52
Status
Nattak\'d
Here's an incomplete injection from Dynami Tracer of what I'm pretty sure is an unused Song. I've actually played through the game, and never heard it before, and it's not in any track list I've ever seen.

Unused Track?

It sounds like a cross between Peter's Puppies from EWJ, a drunken Russian dance, Zorro, and definitely something Arabic. I'm almost positive this would have been used in Sandplanet, if it is indeed unused.


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

#24
Posts: 3,970
Threads: 279
Thanks Received: 236
Thanks Given: 58
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
Could someone explain to me what exactly does the Vibrato (C9 XX XX XX) and the Tremolo (CB XX XX XX). I know how to use the commands it's just that I don't know what they do exactly and before experimenting I would like to know.

Edit: Also, which program do you use to export a spc composition from the ROM in spc format to be able to listen it in a spc player?

Thanks
  Find
Quote  

#25
Posts: 831
Threads: 41
Thanks Received: 16
Thanks Given: 12
Joined: Nov 2009
Reputation: 18
Status
None
@ JCE: I've always wondered if there is a way to replace/import custom sound effects to the ROM, is there a way to do that?
Quote  

#26
Posts: 484
Threads: 62
Thanks Received: 7
Thanks Given: 7
Joined: May 2011
Reputation: 6
Status
Regen
(12-23-2011, 09:38 PM)Madsiur Wrote: Could someone explain to me what exactly does the Vibrato (C9 XX XX XX) and the Tremolo (CB XX XX XX). I know how to use the commands it's just that I don't know what they do exactly and before experimenting I would like to know.

Edit: Also, which program do you use to export a spc composition from the ROM in spc format to be able to listen it in a spc player?

Thanks

Vibrato is sort of like an oscillation of the note back and forth. These links might help you understand both vibrato and tremolo.

As for dumping an SPC sequence from a ROM to an .SPC file to listen to both ZSNES and SNES9x have this capability. Frankly, SNES9x is vastly superior when dealing with SPC sequences compared to ZSNES. In SNES9x right before the song plays--after the current song stops--go File -> Save Other -> Save SPC data. That will dump the next SPC sequence played into an .SPC file and it will be located in the SPC folder where SNES9x is stored on your computer.

(12-23-2011, 11:48 PM)Angelo26 Wrote: @ JCE: I've always wondered if there is a way to replace/import custom sound effects to the ROM, is there a way to do that?

Yes and no. If the sound effect is stored via a BRR waveform sample then yes, absolutely. If the sound effect is generated with the game's SPC core waveform generator, for example like Kefka's laugh, then no. You'd have to re-engineer the waveform generator to generate the sound effect itself. Or just replace another less used or easily replaceable BRR sample with the desired waveform. Games like FF4 has mostly waveform generated sound effects, so replacing them takes quite some doing. Where as games like Street Fighter 2 use a bunch of BRR compressed waveforms and could theoretically be replaced quite easily once you locate both the BRR pointer and BRR data itself.

Here's some examples of my early attempts importing BRR's from one game to another. This of course doesn't cover replacing them with .WAV files...but you can get the idea of the application.

Offtopic slightly, if I could only of matched the frequency better Mystic Quest's distortion guitar is FAR superior to any in video game history.


[Image: jce3000gt_md.png]

[Image: jce3000gt.jpg]
Quote  

#27
Posts: 3,970
Threads: 279
Thanks Received: 236
Thanks Given: 58
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
I think for FFVI instruments used in songs are stored in BBR samples because you can replace them in FF3usME. As of the sound effects that you produce by using the event command F4, I think they come from the SPC core waveform generator: Here are some offsets I found in a detailed ROM map:

Code:
053E5F    053F1B    PTR    No    Pointers to BRRs (63 addresses)    
054C35    085E79    BRR    No    BRR samples

That covers the BBRs. There are 63 adresses for 63 instruments (3F).

Now the next offsets covers sound effects pointers, and sound effects type 1. From what I understand, ithey are transferred to the SPC cor like JCE was telling. I never saw a detailed list of all the sound effects (not instruments) for FFVI with their offsets but we would need that I guess if we want to change some. Plus for the sound effects there is the sample data and the instruction, which maybe is the way the sample is modulated. I'm not too sure however...
Code:
0520C7    0520C8    Length of Sound Effect Sample Data    

0520C9    052215    Sound Effect Sample Data (Copied to SPC locations $4800-$494C)    

052216    052217    Length of Pointer Table to Sound Effect Sample Data    

052218    052237    Pointer Table to Sound Effect Sample Data (Copied to SPC locations $1B00-$1B1F)    

052238    052239    Length of ADSR Data for Sound Effect Samples    

05223A    052249    ADSR Data for Sound Effect Samples (Copied to SPC locations $1A80-$1A8F)    

05224A    05224B    Length of Wave Rate Multiplying Values for Sound Effect Samples    

05224C    05225B    Wave Rate Multiplying Values for Sound Effect Samples (Copied to SPC locations $1A00-$1A0F)    

05225C    05225D    Length of Type 1 Sound Effect Instruction Pointers and Instructions    

05225E    053E5D    Type 1 Sound Effect Instruction Pointers and Instructions
  Find
Quote  

#28
Posts: 484
Threads: 62
Thanks Received: 7
Thanks Given: 7
Joined: May 2011
Reputation: 6
Status
Regen
(12-24-2011, 07:02 AM)Madsiur Wrote: I think for FFVI instruments used in songs are stored in BBR samples because you can replace them in FF3usME. As of the sound effects that you produce by using the event command F4, I think they come from the SPC core waveform generator: Here are some offsets I found in a detailed ROM map:

That covers the BBRs. There are 63 adresses for 63 instruments (3F).

Just because there are 63 instruments listed that doesn't mean the sound effects aren't still BRRs as well. The game may only read the instrument sample pointer table and not the sound effect table. Games like Street Fighter 2 and Mortal Kombat are a prime example of this as is games like Tales of Phantasia and Star Ocean as well.

You shouldn't separate instrument samples and in-game generated waveform sound effects in terms of calling one a BRR and the other something else. Any waveform that was prerecorded and compressed into a BRR then imported into the game/ROM should be identified as a BRR. If the sound effect or instrument uses the game's specific SPC core waveform generator for triangle, saw, sine or square waveforms those aren't always BRRs but I've noticed that a larger portion are still imported and compressed BRRs. There does seem to be a few games that I've noticed they use an in-game waveform generator but I don't have a specific example listed in any of my documents from 2006/2007. Sad

It is xmas, I'll continue this after the family holiday stuff is over. haha!


[Image: jce3000gt_md.png]

[Image: jce3000gt.jpg]
Quote  

#29
Posts: 3,970
Threads: 279
Thanks Received: 236
Thanks Given: 58
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
(12-24-2011, 12:32 PM)JCE3000GT Wrote: Just because there are 63 instruments listed that doesn't mean the sound effects aren't still BRRs as well. The game may only read the instrument sample pointer table and not the sound effect table. Games like Street Fighter 2 and Mortal Kombat are a prime example of this as is games like Tales of Phantasia and Star Ocean as well.

You shouldn't separate instrument samples and in-game generated waveform sound effects in terms of calling one a BRR and the other something else. Any waveform that was prerecorded and compressed into a BRR then imported into the game/ROM should be identified as a BRR. If the sound effect or instrument uses the game's specific SPC core waveform generator for triangle, saw, sine or square waveforms those aren't always BRRs but I've noticed that a larger portion are still imported and compressed BRRs. There does seem to be a few games that I've noticed they use an in-game waveform generator but I don't have a specific example listed in any of my documents from 2006/2007. Sad

It is xmas, I'll continue this after the family holiday stuff is over. haha!

Thanks for those specifications! You're the music, spc and sound expert on this forum (along with Nattak that can do some nice imports/compositions). I knew I was missing something but I tought because the sound effects are not well documented that it was a sign that we were not able to replace them/import new ones. Oh well I learn something new everyday...Merry Christmast!

  Find
Quote  

#30
Posts: 3,970
Threads: 279
Thanks Received: 236
Thanks Given: 58
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
I have another question regarding the channels used in a song:

In my compostition there is 3 instruments and the pointers are set as follow:

D4 3F 44 40 26 41 D4 3F 26 41 44 40 D4 3F 26 41 44 40
D4 3F 26 41 44 40 D4 3F 26 41 44 40 D4 3F 26 41 44 40

The problem is that the instruments and the notes at 44 40 never plays. If switch the second pointer with another one then it's another insrument that doesn't play... So I can only have 2 instruments on 3 playing at the same time...The channel in red seems to be the problem and whatever pointer is put there, even if it is duplicated elsewhere (like in this example) it will mute the instrument. I tried multiples combination of pointers but with no results.

Also, there is an unknown sound at the beginning of the song that appeared. It's like a simultaneous note that is played. Could it be because I have put a vibrato and echo at the beginning of the song? I checked all the pointer and played a bit witht the values of the vibrato but the weird sound/note at the beginning remains. I even muted the second instrument to make sure. Listen here


Anyone has an answer to those questions?

Thanks
  Find
Quote  



Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite