ChanServ changed the topic of ##yamahasynths to: Channel dedicated to questions and discussion of Yamaha FM Synthesizer internals and corresponding REing. Discussion of synthesis methods similar to the Yamaha line of chips, Sound Blasters + clones, PCM chips like RF5C68, and CD theory of operation are also on-topic. Channel logs: https://freenode.irclog.whitequark.org/~h~yamahasynths
cr1901_modern has quit [Ping timeout: 260 seconds]
cr1901_modern has joined ##yamahasynths
doppler has quit [Ping timeout: 260 seconds]
doppler has joined ##yamahasynths
<cr1901_modern>
ValleyBell: All the non-looping tracks of Kyrandia I've seen so far are meant to decay to nothing after several seconds of sending no commands to the YM3812. >>
<cr1901_modern>
Are VGM files expected to add delays until the instruments decay to 0 volume to accommodate that?
<andlabs>
does it wait for a specifica mount of time
<andlabs>
or does it just wait for you to do something to cause another song to be played
<andlabs>
(like pressing a key)
<cr1901_modern>
No, the last thing the VGM file does is send a key-off to each channel
<cr1901_modern>
0x00001862: 5A 85 F1 YM3812:Ch 2 Op 1 Sustain Level: F, Release Rate: 1
<cr1901_modern>
That's a slow release rate
<cr1901_modern>
Anyways I wrote a script to tell me where keyoffs happen, so I can properly log the time it takes for the music to decay to 0
futarisIRCcloud has joined ##yamahasynths
cr1901_modern1 has joined ##yamahasynths
cr1901_modern has quit [Ping timeout: 264 seconds]
cr1901_modern1 has quit [Client Quit]
cr1901_modern has joined ##yamahasynths
<cr1901_modern>
ValleyBell: Also, I can confirm at least in DOSBOX that the same track that goes out of sync in RDOSPLAY also goes out of sync in the game itself
futarisIRCcloud has quit [Quit: Connection closed for inactivity]
_whitelogger has joined ##yamahasynths
_whitelogger has joined ##yamahasynths
<ValleyBell>
cr1901_modern: The VGM player will terminate the VGM at the sample you specify as "End Sample".
<ValleyBell>
If there are still sustaining sounds playing, it will cut them off.
<ValleyBell>
I would just add a few seconds of "silence" after the last Key Off command to let the sounds fade a bit.
<ValleyBell>
With very slow rates, I usually don't wait until it reaches dead silence. Letting the last note fade out for more than 10 seconds makes it not nice to listen, IMO.
<ValleyBell>
As for loops going out of sync, there are 2 possibilities:
<ValleyBell>
1. loop when they get back in sync
<ValleyBell>
(but this may take a veeeeery long time)
<ValleyBell>
2. loop it so that the loop isn't too noticeable
<ValleyBell>
e.g. if there is an echo track that does out-of-sync, just loop it so that it gets in-sync at the loop point
<ValleyBell>
something like this
<ValleyBell>
I'd need an exact example to show what I mean.
<cr1901_modern>
I captured until I got bored. There are many full loops
<cr1901_modern>
(Which also brings up another q... if you choose to use a loop that's not adjacent to the beginning, non-looped, part of a vgm file, how do you concatenate the two together properly?)
<andlabs>
christ all the instructions for tearing an x68000 apart don't match the one I have
<andlabs>
there was a difference between the original and the XVI/Expert
<andlabs>
that the guides I'm looking at don't account for
<andlabs>
so I have no idea how this thing comes apart
<andlabs>
well we got it down to the PSU and I have no idea now because all the wires are soldered and they don't match any of the contact points on this board