SNESMusic.org Forums

http://snesmusic.org/v2/
It is currently Fri Jun 23, 2017 10:27 am

All times are UTC - 7 hours


Forum rules


* This subforum is simply for the uploading of new SPC sets. Updates should go in the "Updated Sets" subforum, and conversations should be kept to other subforums, unless they directly relate to a submission.

* You may upload full SPC sets in .rsn, .zip, .rar, or .7z format. Do not upload each SPC individually.

* New sets should ideally be fully timed, tagged, and put in order, either via a soundtrack, or in a logical in-game ordering. Submissions lacking this info will not necessarily be rejected, but may take longer to appear on the site. Sets without track titles, however, will be rejected on the spot.

* Do not upload anything that is not SPC-related, or it will be deleted. We are not handling MP3s, PSFs, USFs, GSFs, or any other format at this time.

Note: If a submission thread is locked, it means it has been accepted, prepped, and will appear on the site during the next update.



Post new topic This topic is locked, you cannot edit posts or make further replies.  [ 1 post ] 
Author Message
 Post subject: Fireteam Rogue
PostPosted: Sat Jun 16, 2012 1:49 pm 
Offline
Moderator

Joined: Tue Oct 05, 2010 4:17 pm
Posts: 837
Alright, all systems are go! The unreleased Accolade game's SPC set is done! This is the largest project I have ever done myself (and this one was done solo), but the catch is that the music is segmented. Pardon the long post... but I have lots and lots of documentation incoming.

Like Bubsy II, the music is all split up and individual tracks can be muted. But unlike Bubsy II, the music plays in a more organized fashion, following a more orderly fashion, and usually only having around two variations or so...

Both the Early Alpha and the Later Alpha are represented, with dumps coming from both versions (differences are marked by putting them either in the "Earlier Alpha" or "Later Alpha" folder, and inside those folders is another folder containing tracks not in the other version. For the Earlier Alpha, the two glitched tracks are in there, but they're not in the tagged section due to either bad data or the data being overwritten). I actually started this way back when the Later Alpha had not been found yet (I'll admit it, I didn't get very far in the Early Alpha), and this is one of my earlier attempts at a music modifier. Eventually I was able to grab them all, though the Early Alpha had seven hidden gems (apparently from an even earlier alpha) that required me to use the tune array to modify the pointer, as I had figured out the music header as being FC 38 10 00 00 (there were two bytes before it). The data was clearly leftovers from an even earlier alpha. Three of them came out good and are in the SPC set. One of them is a unique non-looping segment. The other two are combo packs of two parts. The other four didn't do so good, and I don't think I'll be able to restore them because the data is partially overwritten for three out of the four tracks (the first was overwritten by the music array, the second was overwritten by ASM code, and the last one is overwritten by the ROM header because it is too late into the first ROM bank). The fourth one was just simply first note sticking, which makes me think the data in there is just simply bad. The only one that I could dump and hear anything played normally until sticking due to the array. I don't think I could restore that bit that got overwritten, and even if I could, I'm suspicious if it was a combo pack to start with, because when I did attempt it (it was met with the obvious hiccup), I got no better than the original part that played, so I deemed it not recoverable. The other two came out badly glitched. One of them was silent, the other one was pretty much glitched to start with, and both were deemed not recoverable.

At first (this was before the Later Alpha came out) I contacted Russel Borogrove, who did the sound driver, for the composer info. He could not recall the composer. When the Later Alpha came out, the credits were in there and I grabbed the composer info from there. And one of them worked on the original Bubsy SNES game! ^_^

Because the music is played in an orderly fashion, the parts are numbered in order of which they play, kind of like an order list, and the track numbers are lettered by unique part. However, I don't include the same part repeating more than once. For example... here's Watermurk's "order list" by track number + letter.
11a
11a (again)
11b
11c
11a
11a (again)
11d
11e
11f
11g
11f
11g
11b
11c
(loops back to the start)

Not counting repeats, you get twelve parts. 11a gets part numbers of 1 and 4, 11b gets part numbers of 2 and 11, 11c gets part numbers of 3 and 14, 11d gets part number 5, 11e gets part number 6, 11f gets part numbers 7 and 9, and 11g gets part numbers 8 and 10.

Please preserve the part numberings... these are effectively the order the music is played in. Normally you don't get more than one part number, but this one does repeat parts, hence multiple numberings for one track.

There are "Danger variations" that are triggered by standing in a certain area... no, I don't know where, they seem to be placed about in the levels. You'll then hear a variation. Stand still (pausing the game works best) and you can hear the entire tune from there. Some have more than one, but with the exception of The Red Citadel, I only ran into one each. The others were implicitly added by me once I got the music modifier going.

Terrak Xum has a few unused variations. This is caused by the music being too quiet while you're playing the game: a Title Screen music modifier clears that up.

There are a few tracks that don't quite loop properly because some of the notation gets transposed down after the first loop. That's because there is a transposition command that only works for one loop (and the parameters are stored in the SPC file), and it is zeroed out on the next loop.

There are a few incomplete tracks in there (they don't loop). All of them, except for Terrak Xum ~ Danger 3, are from the earlier alpha. To handle track muting for the incomplete tracks, I directly hacked the SPC file.

Speaking of track muting, there are also unused segments. To test for unused segments, I hacked the SPC files and fooled around with the track mute bits. If there was a track unused, I would then switch on and off the tracks and come up with a theoretical segment it could have been used on (Yup, I manually did that. Basically, utilizing unused data.). And like Bubsy II, sometimes you're not supposed to have them all on at once.

I have no PAR codes for the muting or transposition codes because I manually hacked then. But, with a hex editor, I do know how to get to them. Here's what I found out...
$013C indicates what segment ID you're currently playing. You can't modify this.
$0CE8-$0D08 are a collection of sixteen track mute commands (they're 16-bit values converted to hexadecimal, each one turning on or off part of the tune). These play the first loop, and then $0EE8-0F08 play during the other loops. If these two are the same, the same variation will play forever in the SPC file.
$1198-1298 is a collection of transposition parameters. Each one is a signed value indicating how many semitones to transpose the track. This is eight times larger than the track control IDs because this handles each track separately. For those of you expecting $1298-1398 to have a transpose forever effect.. nope, it doesn't work that way. It only sets up the next loop.

Now then... here are the music modifiers for each one. The Early Alpha requires you to select a character (Shadowblade, the one in the bottom left corner, is your best shot), pause the game, set the sound to Music only (you can just fool around and it'll play anyways), and then get killed if you want music to play at the Title Screen (it is also required to turn on the music, which somehow fails to start up initially). I also have level modifiers for the later alpha so you can listen (and see) the levels buried in the game. This includes the boss tune and Terrak Xum, both which do not appear to be accessible.

Fireteam Rogue (Later Alpha)
Title Screen Music Modifier
9DB91Dxx
You must use values divisible by 03. The range is 0C-CF. Out of range is silence.
Watermurk Music Modifier
82962CE3
82962D98
82963E01
82963F99
8298E3xx
Level Modifier for Aja Dae
7E0CE6xx
7E0CE7xx
You must use values divisible by 04. These are two-byte values: 7E0CE7xx is there if you go over 00FC. Her levels are located at 0000-0040, 0048-0064. Boss tune plays at 0064. 0044 is no good, and it crashes the game. Warning: There is no warranty on your character's starting position... it can be placed inside a wall! However, you can play levels your character are not supposed to be in... just don't go over 01B8, or else you'll crash the game.
Level Modifier for Broc
7E0CE8xx
7E0CE9xx
You must use values divisible by 04. These are two-byte values: 7E0CE9xx is there if you go over FC.
His levels are located at 0068-006C, 007C-00B4, 01B0. 0070-0078 are duplicates. Boss tune plays at 0098. Warning: There is no warranty on your character's starting position... it can be placed inside a wall! However, you can play levels your character are not supposed to be in... just don't go over 01B8, or else you'll crash the game.
Level Modifier for Chance
7E0CEAxx
7E0CEBxx
You must use values divisible by 04. These are two-byte values: 7E0CEBxx is there if you go over FC.
His levels are at 0120-0128, 0130-0144, 014C-015C, 0164-0170 in Terrak Xüm and 0160, 0174-01AC in Watermurk. 012C, 0148 are duplicates. The boss tune plays at 0154, 0160, 0170 (the final boss), 01AC. Warning: There is no warranty on your character's starting position... it can be placed inside a wall! However, you can play levels your character are not supposed to be in... just don't go over 01B8, or else you'll crash the game.
Level modifier for Shadowblade
7E0CECxx
7E0CEDxx
His levels are at 00B8-011C, 01B4-01B8. Boss tune plays at 00D4. Warning: There is no warranty on your character's starting position... it can be placed inside a wall! However, you can play levels your character are not supposed to be in... just don't go over 01B8, or else you'll crash the game.

Fireteam Rogue (Early Alpha)
Title Screen Music Modifier
86B502xx
You must use values divisible by 03. The range is 10-CC. There is no more music after CC.
Temple of the Eye Music Modifier
848F2A32
848F2B91
848F3C2A
848F3D97
849132xx
Title Screen Music Modifier (Safe-cracking version)
80D034xx
80D035xx
80D036xx
Temple of the Eye Music Modifier (Safe-cracking version)
80D038xx
80D039xx
80D03Axx
This is the only way to find the seven hidden gems... though only three are good.
34 D4 80
CC D7 80 (One of the bad segments)
7F E3 80
FB E7 80
CE EA 80 (This one came out first-note sticking... but the data seems OK. My guess is bad code.)
81 EB 80 (Silence.)
32 FC 80 (Glitched.)
Would anyone like to know how these managed to slip in there in the first place? They're probably leftover data! Yeouch.

Here's the list of the other 48 in order of memory (ignore the zero)...
EA A6 BC 00
86 AA BC 00
4F AE BC 00
90 B0 BC 00
AF B1 BC 00
EC B3 BC 00
02 B6 BC 00
E5 BF BC 00
00 80 BD 00

1B 86 BD 00
6F 8A BD 00
48 8F BD 00
49 95 BD 00
E0 99 BD 00
3F C0 BD 00
83 C5 BD 00
C6 C9 BD 00
9D D2 BD 00
57 D9 BD 00
FC DF BD 00
83 E6 BD 00
9D E8 BD 00
6D EC BD 00
96 ED BD 00
00 80 BE 00
A5 80 BE 00
BF 89 BE 00
42 91 BE 00
9B 93 BE 00
09 98 BE 00
58 9B BE 00
B0 A6 BE 00

FD AC BE 00
03 B4 BE 00
06 B7 BE 00
06 BE BE 00
CD BF BE 00
CA C2 BE 00
D1 C5 BE 00
40 CC BE 00
30 D3 BE 00
14 D5 BE 00
4D D8 BE 00
EF DB BE 00
D3 E3 BE 00
B7 E5 BE 00
CF E8 BE 00

4A EE BE 00

The Stage Complete tracks were implicitly identified. The very last one is completely unidentified: I thought it was the ending theme, however I was able to hack my way into the ending (this could only be done in the later alpha), and it did not play there.

And that's all for now. Lots of hacking required to get this one out the gate.


Attachments:
File comment: The complete Fireteam Rogue SPC set, dumped and tagged by KungFuFurby.
ftr.rsn [406.8 KiB]
Downloaded 210 times

_________________
Just consider me your friendly SPC dumper. Also a bit of a perfectionist (though not too literally)... I make sure my dumps are at the first note. I might even hack away the SFX if needed.

Want a music modifier for a particular SNES game? All you need to do is ask via PM (or you can check out the Music Modifiers topic and post there) and I'll be on the job. ^_^

SPC Set Progress Log
Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic This topic is locked, you cannot edit posts or make further replies.  [ 1 post ] 

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group