Register - Login
Views: 99388921
Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users
Ranks - Rules/FAQ - Stats - Latest Posts - Color Chart - Smilies
04-24-22 07:41:27 AM
Jul - The Cutting Room Floor - Out of This World (SNES) New poll - New thread - New reply
Next newer thread | Next older thread
kode54
Member
Level: 17


Posts: 21/55
EXP: 22929
For next: 1814

Since: 08-29-13

From: Riverside, CA, US

Since last post: 8.4 years
Last activity: 5.3 years

Posted on 10-30-13 04:38:21 AM Link | Quote
Is there a music code for this game? I'd love to rip the entire soundtrack to SFMs. Or possibly trim the initialization code down to just starting the music and locking up, so I could optionally produce an SNSF set, not that I have a proper player for those.
kode54
Member
Level: 17


Posts: 23/55
EXP: 22929
For next: 1814

Since: 08-29-13

From: Riverside, CA, US

Since last post: 8.4 years
Last activity: 5.3 years

Posted on 11-01-13 01:02:19 AM Link | Quote
Well, thanks to Seru-kun / LuigiBlood, I have an offset into the ROM image for a music number table, 0x4152, which works with both US-NTSC and PAL versions of the game. The problem is, I have to find a musical event which does not occur while the game will be generating sound effects. The first music entry, which occurs when you first surface from the pool at the start of the game, is immediately followed by the sounds of footsteps and/or maybe the monster in the background appearing.
KungFuFurby
Member
Level: 12


Posts: 19/25
EXP: 7816
For next: 105

Since: 08-10-11


Since last post: 8.2 years
Last activity: 2.5 years

Posted on 11-03-13 02:49:43 PM Link | Quote
I'm working on that through the Title Screen (which does not use that particular array). I have the music part, but I'm hunting down what I suspect is a sample pack modifier at the moment.

It's probably the best case scenario for this particular game.
Bisqwit
90
Level: 22


Posts: 94/94
EXP: 55396
For next: 2954

Since: 03-12-12

From: Finland

Since last post: 8.5 years
Last activity: 6.6 years

Posted on 11-03-13 03:10:04 PM Link | Quote
Try disabling the invokement of sound effects.
KungFuFurby
Member
Level: 12


Posts: 20/25
EXP: 7816
For next: 105

Since: 08-10-11


Since last post: 8.2 years
Last activity: 2.5 years

Posted on 11-03-13 05:54:12 PM Link | Quote
That's easily done with a hex editor once I know what triggers the sound effects... the catch is that usually you have lots and lots of calls for sound effects.

In other news, I have a Title Screen music modifier ready. Here are the PAR codes for the US version:

Out of This World
Title Screen Music Modifier
Music ~ 80D990xx
Sample Pack ~ 80D462xx
The range for the music is 00-01, 03-05, 07, 09-0C, 0E. 02, 06, 08 are duplicates of 00. 0D is a duplicate of 0C. There is no more music after 0E.

The unused song is located at 05.
kode54
Member
Level: 17


Posts: 29/55
EXP: 22929
For next: 1814

Since: 08-29-13

From: Riverside, CA, US

Since last post: 8.4 years
Last activity: 5.3 years

Posted on 11-11-13 09:03:58 AM (last edited by kode54 at 11-11-13 12:13:13 PM) Link | Quote
Excellent. Now how do the sample packs relate to the various song numbers? Identical, or do they pair up in any particular way?

EDIT: Quick reference code for anyone attempting to patch the game for SNSF use, you just need this PAR code: 80D99580+80D996FE

EDIT 2: 09 and 0A use pack 00. 00-01, 03-05, 07, 0C, and 0E all use sample pack 01. 0B uses pack 02.
KungFuFurby
Member
Level: 12


Posts: 21/25
EXP: 7816
For next: 105

Since: 08-10-11


Since last post: 8.2 years
Last activity: 2.5 years

Posted on 11-11-13 04:07:44 PM (last edited by KungFuFurby at 11-11-13 04:16:01 PM) Link | Quote
I'm nervous about using 80 FE (which stop the game) in games that stream their note data because of their real-time nature, but the reason why it probably works here is because the music uses the interrupt routine to play back the music. Not guaranteed to work every time, but it works here.

Sample packs pair up in a particular way. None of the songs that use sample pack 01 even remotely work on sample packs 00 and 02. In other cases, samples can be swapped out.

Reply to edit 2: Oh! Really? Now that I listen to it, there is at least one sample that is swapped out in sample pack 02 that song 0B uses. Well done! I couldn't tell in the first place until you showed me the code to stop the game in its tracks. I usually don't try to stop the game like that because I see that as particularly dangerous for games that stream their note data in real time... sometimes it results in no music at all (I actually didn't test that theory on any of the games because I felt like I was probably going to get nothing... one of the games when I did fool around with the music did indeed end up on a black screen, but I got away with the music modifier because the music still played perfectly fine). The only way that can work is if the game processes the music data in the interrupt routine. So I usually take a safer route by checking where in the game I can let the music play indefinitely without SFX interruption. I have a nearly complete set of music modifier for games that cannot be dumped to the .spc format.
kode54
Member
Level: 17


Posts: 30/55
EXP: 22929
For next: 1814

Since: 08-29-13

From: Riverside, CA, US

Since last post: 8.4 years
Last activity: 5.3 years

Posted on 11-12-13 01:10:03 AM (last edited by kode54 at 11-12-13 01:47:18 AM) Link | Quote
I found that it uses pack 02 from disassembly tracing from the tail end of the opening to the beginning of the music from the demo loop. It even starts it in a roundabout way, pushing the three arguments to the sample upload function, then calling two or three other functions before finally calling the sample uploader. That made tracing it from a runtime disassembly a bit annoying.

EDIT: And I only bothered posting that BRA $-2 code because I verified that it left the title music unmolested.
Next newer thread | Next older thread
Jul - The Cutting Room Floor - Out of This World (SNES) New poll - New thread - New reply


Rusted Logic

Acmlmboard - commit 47be4dc [2021-08-23]
©2000-2022 Acmlm, Xkeeper, Kaito Sinclaire, et al.

30 database queries, 5 query cache hits.
Query execution time:  0.088319 seconds
Script execution time:  0.010938 seconds
Total render time:  0.099257 seconds


TidyHTML vomit below
line 1 column 1 - Warning: missing <!DOCTYPE> declaration
line 2 column 301 - Warning: unescaped & or unknown entity "&page"
line 119 column 11 - Warning: <form> isn't allowed in <table> elements
line 118 column 10 - Info: <table> previously mentioned
line 120 column 11 - Warning: missing <tr>
line 120 column 119 - Warning: missing </font> before </td>
line 124 column 16 - Warning: plain text isn't allowed in <tr> elements
line 120 column 11 - Info: <tr> previously mentioned
line 125 column 68 - Warning: missing </nobr> before </td>
line 141 column 68 - Warning: missing </nobr> before <tr>
line 147 column 35 - Warning: missing <tr>
line 147 column 50 - Warning: missing </font> before </td>
line 148 column 37 - Warning: unescaped & or unknown entity "&id"
line 147 column 195 - Warning: missing </font> before </table>
line 149 column 35 - Warning: missing <tr>
line 149 column 50 - Warning: missing </font> before </td>
line 149 column 91 - Warning: missing </font> before </table>
line 156 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 158 column 9 - Warning: missing <tr>
line 176 column 13 - Warning: missing <tr>
line 177 column 102 - Warning: unescaped & or unknown entity "&postid"
line 182 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 184 column 9 - Warning: missing <tr>
line 202 column 13 - Warning: missing <tr>
line 203 column 102 - Warning: unescaped & or unknown entity "&postid"
line 208 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 210 column 9 - Warning: missing <tr>
line 228 column 13 - Warning: missing <tr>
line 229 column 102 - Warning: unescaped & or unknown entity "&postid"
line 236 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 238 column 9 - Warning: missing <tr>
line 256 column 13 - Warning: missing <tr>
line 257 column 102 - Warning: unescaped & or unknown entity "&postid"
line 259 column 269 - Warning: missing </div>
line 259 column 210 - Warning: missing </div>
line 259 column 185 - Warning: missing </div>
line 259 column 74 - Warning: missing </div>
line 262 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 264 column 9 - Warning: missing <tr>
line 282 column 13 - Warning: missing <tr>
line 283 column 102 - Warning: unescaped & or unknown entity "&postid"
line 298 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 300 column 9 - Warning: missing <tr>
line 318 column 13 - Warning: missing <tr>
line 319 column 102 - Warning: unescaped & or unknown entity "&postid"
line 328 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 330 column 9 - Warning: missing <tr>
line 348 column 13 - Warning: missing <tr>
line 349 column 102 - Warning: unescaped & or unknown entity "&postid"
line 358 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 360 column 9 - Warning: missing <tr>
line 378 column 13 - Warning: missing <tr>
line 379 column 102 - Warning: unescaped & or unknown entity "&postid"
line 386 column 17 - Warning: missing <tr>
line 386 column 17 - Warning: discarding unexpected <table>
line 389 column 35 - Warning: missing <tr>
line 389 column 50 - Warning: missing </font> before </td>
line 389 column 91 - Warning: missing </font> before </table>
line 391 column 35 - Warning: missing <tr>
line 391 column 50 - Warning: missing </font> before </td>
line 392 column 37 - Warning: unescaped & or unknown entity "&id"
line 391 column 195 - Warning: missing </font> before </table>
line 393 column 17 - Warning: discarding unexpected </textarea>
line 393 column 28 - Warning: discarding unexpected </form>
line 393 column 35 - Warning: discarding unexpected </embed>
line 393 column 43 - Warning: discarding unexpected </noembed>
line 393 column 53 - Warning: discarding unexpected </noscript>
line 393 column 64 - Warning: discarding unexpected </noembed>
line 393 column 74 - Warning: discarding unexpected </embed>
line 393 column 82 - Warning: discarding unexpected </table>
line 393 column 90 - Warning: discarding unexpected </table>
line 395 column 9 - Warning: missing </font> before <table>
line 407 column 25 - Warning: discarding unexpected </font>
line 416 column 57 - Warning: discarding unexpected </font>
line 394 column 1 - Warning: missing </center>
line 120 column 63 - Warning: <img> lacks "alt" attribute
line 125 column 19 - Warning: <td> attribute "width" has invalid value "120px"
line 125 column 93 - Warning: <img> lacks "alt" attribute
line 141 column 19 - Warning: <td> attribute "width" has invalid value "120px"
line 141 column 98 - Warning: <img> lacks "alt" attribute
line 148 column 44 - Warning: <img> proprietary attribute value "absmiddle"
line 148 column 142 - Warning: <img> proprietary attribute value "absmiddle"
line 148 column 246 - Warning: <img> proprietary attribute value "absmiddle"
line 161 column 22 - Warning: <img> lacks "alt" attribute
line 161 column 63 - Warning: <img> lacks "alt" attribute
line 161 column 112 - Warning: <img> lacks "alt" attribute
line 161 column 162 - Warning: <img> lacks "alt" attribute
line 162 column 11 - Warning: <img> lacks "alt" attribute
line 172 column 15 - Warning: <img> lacks "alt" attribute
line 187 column 22 - Warning: <img> lacks "alt" attribute
line 187 column 63 - Warning: <img> lacks "alt" attribute
line 187 column 112 - Warning: <img> lacks "alt" attribute
line 187 column 162 - Warning: <img> lacks "alt" attribute
line 188 column 11 - Warning: <img> lacks "alt" attribute
line 198 column 15 - Warning: <img> lacks "alt" attribute
line 213 column 22 - Warning: <img> lacks "alt" attribute
line 213 column 63 - Warning: <img> lacks "alt" attribute
line 213 column 112 - Warning: <img> lacks "alt" attribute
line 213 column 161 - Warning: <img> lacks "alt" attribute
line 224 column 15 - Warning: <img> lacks "alt" attribute
line 240 column 14 - Warning: <img> proprietary attribute value "absmiddle"
line 240 column 14 - Warning: <img> lacks "alt" attribute
line 240 column 57 - Warning: <img> proprietary attribute value "absmiddle"
line 240 column 57 - Warning: <img> lacks "alt" attribute
line 240 column 100 - Warning: <img> proprietary attribute value "absmiddle"
line 240 column 100 - Warning: <img> lacks "alt" attribute
line 240 column 143 - Warning: <img> proprietary attribute value "absmiddle"
line 240 column 143 - Warning: <img> lacks "alt" attribute
line 240 column 186 - Warning: <img> proprietary attribute value "absmiddle"
line 240 column 186 - Warning: <img> lacks "alt" attribute
line 241 column 22 - Warning: <img> lacks "alt" attribute
line 241 column 63 - Warning: <img> lacks "alt" attribute
line 241 column 112 - Warning: <img> lacks "alt" attribute
line 241 column 162 - Warning: <img> lacks "alt" attribute
line 242 column 11 - Warning: <img> lacks "alt" attribute
line 252 column 15 - Warning: <img> lacks "alt" attribute
line 267 column 22 - Warning: <img> lacks "alt" attribute
line 267 column 63 - Warning: <img> lacks "alt" attribute
line 267 column 112 - Warning: <img> lacks "alt" attribute
line 267 column 161 - Warning: <img> lacks "alt" attribute
line 278 column 15 - Warning: <img> lacks "alt" attribute
line 303 column 22 - Warning: <img> lacks "alt" attribute
line 303 column 63 - Warning: <img> lacks "alt" attribute
line 303 column 112 - Warning: <img> lacks "alt" attribute
line 303 column 162 - Warning: <img> lacks "alt" attribute
line 304 column 11 - Warning: <img> lacks "alt" attribute
line 314 column 15 - Warning: <img> lacks "alt" attribute
line 318 column 92 - Warning: <font> attribute "color" had invalid value "7C60B0" and has been replaced
line 333 column 22 - Warning: <img> lacks "alt" attribute
line 333 column 63 - Warning: <img> lacks "alt" attribute
line 333 column 112 - Warning: <img> lacks "alt" attribute
line 333 column 161 - Warning: <img> lacks "alt" attribute
line 344 column 15 - Warning: <img> lacks "alt" attribute
line 348 column 92 - Warning: <font> attribute "color" had invalid value "7C60B0" and has been replaced
line 363 column 22 - Warning: <img> lacks "alt" attribute
line 363 column 63 - Warning: <img> lacks "alt" attribute
line 363 column 112 - Warning: <img> lacks "alt" attribute
line 363 column 162 - Warning: <img> lacks "alt" attribute
line 364 column 11 - Warning: <img> lacks "alt" attribute
line 374 column 15 - Warning: <img> lacks "alt" attribute
line 378 column 92 - Warning: <font> attribute "color" had invalid value "7C60B0" and has been replaced
line 392 column 44 - Warning: <img> proprietary attribute value "absmiddle"
line 392 column 142 - Warning: <img> proprietary attribute value "absmiddle"
line 392 column 246 - Warning: <img> proprietary attribute value "absmiddle"
line 401 column 25 - Warning: <img> lacks "alt" attribute
line 406 column 267 - Warning: <img> lacks "alt" attribute
line 149 column 50 - Warning: trimming empty <font>
line 386 column 17 - Warning: trimming empty <tr>
line 389 column 50 - Warning: trimming empty <font>
line 125 column 68 - Warning: <nobr> is not approved by W3C
line 141 column 68 - Warning: <nobr> is not approved by W3C
line 177 column 27 - Warning: <nobr> is not approved by W3C
line 203 column 27 - Warning: <nobr> is not approved by W3C
line 229 column 27 - Warning: <nobr> is not approved by W3C
line 257 column 27 - Warning: <nobr> is not approved by W3C
line 283 column 27 - Warning: <nobr> is not approved by W3C
line 319 column 27 - Warning: <nobr> is not approved by W3C
line 349 column 27 - Warning: <nobr> is not approved by W3C
line 379 column 27 - Warning: <nobr> is not approved by W3C
Info: Document content looks like HTML5
Info: No system identifier in emitted doctype
Tidy found 157 warnings and 0 errors!


The alt attribute should be used to give a short description
of an image; longer descriptions should be given with the
longdesc attribute which takes a URL linked to the description.
These measures are needed for people using non-graphical browsers.

For further advice on how to make your pages accessible
see http://www.w3.org/WAI/GL.
You are recommended to use CSS to specify the font and
properties such as its size and color. This will reduce
the size of HTML files and make them easier to maintain
compared with using <FONT> elements.

You are recommended to use CSS to control line wrapping.
Use "white-space: nowrap" to inhibit wrapping in place
of inserting <NOBR>...</NOBR> into the markup.

About HTML Tidy: https://github.com/htacg/tidy-html5
Bug reports and comments: https://github.com/htacg/tidy-html5/issues
Official mailing list: https://lists.w3.org/Archives/Public/public-htacg/
Latest HTML specification: http://dev.w3.org/html5/spec-author-view/
Validate your HTML documents: http://validator.w3.org/nu/
Lobby your company to join the W3C: http://www.w3.org/Consortium

Do you speak a language other than English, or a different variant of
English? Consider helping us to localize HTML Tidy. For details please see
https://github.com/htacg/tidy-html5/blob/master/README/LOCALIZE.md