Samurai Shodown / Samurai Spirits
Zeldix :: MSU-1 Hacking :: MSU-1 Development :: Finished
Page 1 of 2
Page 1 of 2 • 1, 2
Samurai Shodown / Samurai Spirits
So I've located the track selection in ram, I can mute the SPC music, etc and all looks good for a hack, but this game seems to send the SFX as music?
If I mute the music, there's no SFX, and going above the music in index does play SFX.
Track index is at $7EC469, can be changed at
$c017f1 CMP $C469 (currently loaded track on $7ec469, new track value on accumulator)
"play" command seems to be sent at
$c01254 STA $2140 (00 no play, 01 play)
Any tips or tricks on doing an SPC mute here?
If I mute the music, there's no SFX, and going above the music in index does play SFX.
Track index is at $7EC469, can be changed at
$c017f1 CMP $C469 (currently loaded track on $7ec469, new track value on accumulator)
"play" command seems to be sent at
$c01254 STA $2140 (00 no play, 01 play)
Any tips or tricks on doing an SPC mute here?
Last edited by Cubear on Mon 3 Jan 2022 - 13:29; edited 3 times in total
Re: Samurai Shodown / Samurai Spirits
@Cubear Ah, the pain in the ass Takara games. Every time Conn and I encounter this game publisher it always ends up in giving up on SPC fallback and going down the APU mute route. I am sure SPC fallback can be preserved but it is a royal pain with games from Takara to find a good way to apply it.
After messing with Fatal Fury (took me some time to figure that beast out). Fatal Fury Special was a royal pain too. Luckily, Conn helped me out of that one. Only exception was World Heroes 2. That Takara game was not so bad to msu.
Conn may help out more. He is more experienced in dealing with APU mutes than me. Same approach applies with APU. Just monitor APU RAM and find what values to zero out that will kill the music portion. Once you locate it, you have to find the APU code stored in ROM that writes to APU RAM and NOP the code that prevents music from playing. A little more complex and time consuming. Well, not for Conn, lol.
After messing with Fatal Fury (took me some time to figure that beast out). Fatal Fury Special was a royal pain too. Luckily, Conn helped me out of that one. Only exception was World Heroes 2. That Takara game was not so bad to msu.
Conn may help out more. He is more experienced in dealing with APU mutes than me. Same approach applies with APU. Just monitor APU RAM and find what values to zero out that will kill the music portion. Once you locate it, you have to find the APU code stored in ROM that writes to APU RAM and NOP the code that prevents music from playing. A little more complex and time consuming. Well, not for Conn, lol.
Last edited by pepillopev on Fri 31 Dec 2021 - 19:12; edited 1 time in total
pev- Since : 2017-10-16
Re: Samurai Shodown / Samurai Spirits
My thought for doing this in a manner that does have fallback would be to create a silent, looping track in the index and calling that for my mutes. It does sound like a pain in the ass though.
It's likely the exact same sound engine as fatal fury so it's probably likely that I can just steal the code wholesale.. should have thought about that.
It's likely the exact same sound engine as fatal fury so it's probably likely that I can just steal the code wholesale.. should have thought about that.
Re: Samurai Shodown / Samurai Spirits
From recollection, I believe the Fatal Fury Special sound engine is more similar to your scenario. If you mute at $2140 it kills all audio. That source code may help you out more.
pev- Since : 2017-10-16
Re: Samurai Shodown / Samurai Spirits
Also, as you start going into the odd games from weird publishers expect this more often. The well known publishers sound engines are more pleasant to work with.
pev- Since : 2017-10-16
Re: Samurai Shodown / Samurai Spirits
Well, I'm just trying to clear out the wishlist a litle bit. I saw Relikk has a PCM pack done up for this game and figured "sure why the heck not?"
It just had to be Conn's code that I had to puzzle through . with no comments to speak of... but it's ok.
It helps me learn to have to think things through and work out why it works.
It just had to be Conn's code that I had to puzzle through . with no comments to speak of... but it's ok.
It helps me learn to have to think things through and work out why it works.
Re: Samurai Shodown / Samurai Spirits
Best way to learn. Again, you can always ask the Grand master Conn for insight. He is always willing to help.Cubear wrote:...It helps me learn to have to think things through and work out why it works.
pev- Since : 2017-10-16
Re: Samurai Shodown / Samurai Spirits
@Cubear Also, welcome to Zeldix. It is always nice to see new faces with fresh new ideas and approaches. Have fun and take breaks when needed. No need to rush through stuff. It will always be there for you to tackle later on.
pev- Since : 2017-10-16
Re: Samurai Shodown / Samurai Spirits
Thank you!
I've always thought rom hacking was super cool, and also probably that I'd never be able to do it... I'm glad I was wrong on at least one count.
And yeah, I'll slow back down once winter break is over and I have to return to work.. plus they're launching a new savage tier for FFXIV that I assume is going to take lots of concentration on my part... it could be MONTHS before i have time to tackle another game after this week. lol
I've always thought rom hacking was super cool, and also probably that I'd never be able to do it... I'm glad I was wrong on at least one count.
And yeah, I'll slow back down once winter break is over and I have to return to work.. plus they're launching a new savage tier for FFXIV that I assume is going to take lots of concentration on my part... it could be MONTHS before i have time to tackle another game after this week. lol
Re: Samurai Shodown / Samurai Spirits
No promises whether I have the time, but if the hard mute is reachable without much effort...
We have a considerable amount of games with hard mute and it's never been a problem. You only need a full pcm set in that case, even if it is simply original spc converted to a pcm
We have a considerable amount of games with hard mute and it's never been a problem. You only need a full pcm set in that case, even if it is simply original spc converted to a pcm
Conn- Since : 2013-06-30
Re: Samurai Shodown / Samurai Spirits
Oh for sure. This is my project first and foremost and I plan on coming up with a clever solution...
Your help comes only when you want to give it. You definitely do not owe me anything! (Happy new year BTW)
Your help comes only when you want to give it. You definitely do not owe me anything! (Happy new year BTW)
Re: Samurai Shodown / Samurai Spirits
I have two other soundtracks to use for this that I was going to get around to eventually, but I'll get them done within the next few days. Both are arranged versions.
Relikk- Since : 2017-02-17
Re: Samurai Shodown / Samurai Spirits
A first glimpse at hard mute looks bad, unfortunately. Equally what I tried it didn't play sfx. This seems to be like one of those games that have all or nothing, means either both spc and sfx are enabled or nothing
Conn- Since : 2013-06-30
Re: Samurai Shodown / Samurai Spirits
*lol, Pev saved the day with his Fatal Fury Spec reference. I checked what I did there (I must have been hyperintelligence back that time, since I can't rretrace it at all).
Anyways. The good news is that the APU:s in both games are very much alike, so I was able to find out the SShowdown reference. Give at rom (it is APU mute)
0x80c9c: f4 a0 f0 0e f4 -> e8 00 c4 31 6f
asm:
Anyways. The good news is that the APU:s in both games are very much alike, so I was able to find out the SShowdown reference. Give at rom (it is APU mute)
0x80c9c: f4 a0 f0 0e f4 -> e8 00 c4 31 6f
asm:
- Code:
hirom
org $c80c9c
db $e8,$00,$c4,$31,$6f ;hard mute
Conn- Since : 2013-06-30
Re: Samurai Shodown / Samurai Spirits
Thank you for your work. I'll throw this together tonight probably.
Re: Samurai Shodown / Samurai Spirits
Starting to feel like i'm losing my mind here. everything looks good and should be doing exactly what i want but it's not playing the tracks i have set up on my end. everything should be set up just fine. no idea what's up lol.
I've attached my code to this post. I'll probably have to map some noloop tracks in a bit here for a proper version 1.0, but other than that it should just do what it says on the tin.
edit: ohhh i think i get it. i'm wriiting to the 7E area which isnt mirrored.... hmmmm
I fixed it. Maybe a hacky method but if it works its good enough! Here's a version without any noloops in, i'll add those eventually (00:10 AM at time of writing this) but here's a beta version of this patch for now.
I've attached my code to this post. I'll probably have to map some noloop tracks in a bit here for a proper version 1.0, but other than that it should just do what it says on the tin.
edit: ohhh i think i get it. i'm wriiting to the 7E area which isnt mirrored.... hmmmm
I fixed it. Maybe a hacky method but if it works its good enough! Here's a version without any noloops in, i'll add those eventually (00:10 AM at time of writing this) but here's a beta version of this patch for now.
- Attachments
Re: Samurai Shodown / Samurai Spirits
Finished editing the Neo Geo CD soundtrack and transferred the track map to a Google spreadsheet. I noticed that "Samurai Legend" is there twice. Tracks $0F and $1D.
https://docs.google.com/spreadsheets/d/1lJy51NZzvYzrHBOQaI5RBu5h8mdU14JKOFDi5X1YnkE
https://docs.google.com/spreadsheets/d/1lJy51NZzvYzrHBOQaI5RBu5h8mdU14JKOFDi5X1YnkE
Relikk- Since : 2017-02-17
Re: Samurai Shodown / Samurai Spirits
Yeah. To the best of my knowledge only 1D is used, but I listed both just in case..
here's the tracks that don't loop btw, sorry for being slow on this information!
here's the tracks that don't loop btw, sorry for being slow on this information!
- noloop:
$0F
$11
$12
$13
$14
$15
$17
$19
$1A
$1B
$1D
Last edited by Cubear on Sun 2 Jan 2022 - 14:03; edited 2 times in total
Re: Samurai Shodown / Samurai Spirits
Perfect. Just wanted to make sure it was intentional.
Relikk- Since : 2017-02-17
Re: Samurai Shodown / Samurai Spirits
Another oddity is tracks $1F and $20, $20 plays during the Takara screen at the very beginning but was muted out by the developers.
Not sure when $1F is used. They are both voice clips (noloop) and we may need to rip them and include in the music packs just in case.
Enough yammering on though, here's a 1.0 patch with noloop tracks done up properly!
Not sure when $1F is used. They are both voice clips (noloop) and we may need to rip them and include in the music packs just in case.
Enough yammering on though, here's a 1.0 patch with noloop tracks done up properly!
- Attachments
Re: Samurai Shodown / Samurai Spirits
Just a small correction to the track map on the first full playthrough. Tam Tam and Jubei's tracks were swapped. That has been sorted on the spreadsheet.
Also, $0E should be added to your loop table as a non-looping track.
Everything else seems fine, so far.
Also, $0E should be added to your loop table as a non-looping track.
Everything else seems fine, so far.
Relikk- Since : 2017-02-17
Re: Samurai Shodown / Samurai Spirits
Thanks for the playtesting and corrections, Relikk! I'll put that in there shortly.
updated patch file attached for posterity
1.01: added noloop status to track $0E
updated patch file attached for posterity
1.01: added noloop status to track $0E
- Attachments
Re: Samurai Shodown / Samurai Spirits
I hope this is easy to decipher, but one last change I'd recommend (a little bit of a track remapping challenge at specific points if you can do it) is in relation to the Amakusa cutscenes. They should all play the same track except for the last one before the fight with Amakusa himself. Here are some YouTube videos for reference to the specific cutscenes mentioned below.
SNES Version:
1st (plays track $13): https://youtu.be/DTovP5WFB9M?t=468
2nd (plays track $13): https://youtu.be/DTovP5WFB9M?t=513
3rd (plays track $14): https://youtu.be/DTovP5WFB9M?t=919 (This is where it plays a different track, but should be $13, the same as the first two)
4th (plays track $13): https://youtu.be/DTovP5WFB9M?t=962
5th (plays track $13): https://youtu.be/DTovP5WFB9M?t=1638
6th (plays track $13): https://youtu.be/DTovP5WFB9M?t=1690 (The last one before the Amakusa fight. This is the only track from the 6 cutscenes that should be different)
In summary, 1st to 5th should be the same track (track $13). The 6th is the only difference (should be track $14 on its own).
This one is fine. You can leave this one alone: https://youtu.be/DTovP5WFB9M?t=650
Neo Geo comparison for reference:
1st: https://youtu.be/pq78JeitEUw?t=455
2nd: https://youtu.be/pq78JeitEUw?t=502
3rd: https://youtu.be/pq78JeitEUw?t=912
4th: https://youtu.be/pq78JeitEUw?t=959
5th: https://youtu.be/pq78JeitEUw?t=1729
6th: https://youtu.be/pq78JeitEUw?t=1771
1st to 5th, all the same track. 6th is different.
I've attached BSNES save states from before each cutscene is triggered. The BSNES version I used is from the 16th of December: https://www.emucr.com/2021/12/bsnes-plus-git-20211216.html
SNES Version:
1st (plays track $13): https://youtu.be/DTovP5WFB9M?t=468
2nd (plays track $13): https://youtu.be/DTovP5WFB9M?t=513
3rd (plays track $14): https://youtu.be/DTovP5WFB9M?t=919 (This is where it plays a different track, but should be $13, the same as the first two)
4th (plays track $13): https://youtu.be/DTovP5WFB9M?t=962
5th (plays track $13): https://youtu.be/DTovP5WFB9M?t=1638
6th (plays track $13): https://youtu.be/DTovP5WFB9M?t=1690 (The last one before the Amakusa fight. This is the only track from the 6 cutscenes that should be different)
In summary, 1st to 5th should be the same track (track $13). The 6th is the only difference (should be track $14 on its own).
This one is fine. You can leave this one alone: https://youtu.be/DTovP5WFB9M?t=650
Neo Geo comparison for reference:
1st: https://youtu.be/pq78JeitEUw?t=455
2nd: https://youtu.be/pq78JeitEUw?t=502
3rd: https://youtu.be/pq78JeitEUw?t=912
4th: https://youtu.be/pq78JeitEUw?t=959
5th: https://youtu.be/pq78JeitEUw?t=1729
6th: https://youtu.be/pq78JeitEUw?t=1771
1st to 5th, all the same track. 6th is different.
I've attached BSNES save states from before each cutscene is triggered. The BSNES version I used is from the 16th of December: https://www.emucr.com/2021/12/bsnes-plus-git-20211216.html
Relikk- Since : 2017-02-17
Re: Samurai Shodown / Samurai Spirits
Wow, you’re very thorough! I can probably manage to put that into code, just have a byte in ram that increases when track $14 plays, check for the byte at track selection $14, play track $13 at value of 0, increase byte, play track $14 at value of 1 and reset byte to zero.. I can probably manage that after I get home from work.
Page 1 of 2 • 1, 2
Zeldix :: MSU-1 Hacking :: MSU-1 Development :: Finished
Page 1 of 2
Permissions in this forum:
You cannot reply to topics in this forum