vgmtrans / vgmtrans

VGMTrans - a tool to convert proprietary, sequenced videogame music to industry-standard formats
812 stars 78 forks source link

I can only extract half the midi from a .spc #467

Open Bensmirus opened 2 months ago

Bensmirus commented 2 months ago

Environment details

Describe the bug

With SPC700 player I can hear all 8 channels for the correct duration of the song. With vgmtrans, I can only hear about half the song and therefore only about half the midi get extracted

Thanks

Steps to reproduce

  1. Load the game
  2. ...

Expected behaviour

I would like to be able to have transvgm read the entire song not only half of it

Additional context

No response

Logs

No response

apollolux commented 2 months ago

I know the behavior of this song in particular though I'm a bit rusty in my own CT exploration history, but need to know how this SPC was obtained.

If this is from the SPC collection on the SNESMusic website, it's almost certainly either extracted directly from the game data or otherwise hand-edited to match the non-looping version that plays as the title music. Any other attempts to log the SPC using emulators that can log SPC data result in only logging the first half that loops (aka the version that plays as "Crono's Theme" whenever you switch to him at the End of Time, after you watch the computer footage in 2300AD, or start the Lavos fight sequence through the bucket).

Even if you're using the composited title screen version, I'm not 100% sure VGMTrans's SNES code handling knows to step over the cancelled loop point in this instance (it's likely a game programming command that says to trigger the next song in queue, I haven't looked at it myself in years). @mikelow Yasunori Mitsuda is the song's composer, but I'm pretty sure Minoru Akao was the audio programmer, so this might fall under snes-akao handling, but there are other non-Squaresoft games that have done similar "stream SPC data in real-time from the game" techniques that make it more difficult to properly log or otherwise convert SPCs like this one Japanese wrestling game my brother is fond of (IIRC AJPW 3, but I forget exactly).

Bensmirus commented 2 months ago

You are very knowledgeable, thanks for your insight !