> many (most) modern players it will only play once until progressing to the next tune I don't know of any players that detect a sid loop by themselves without the Songlength database, care to name one or two?
> manually copying the loop until the length of the tune is at least a minute this is useless as the loop is detected anyway on first repetition. 15*4 or 15*1000, the loop is still after 15 seconds.
What detects the looping? Is there an automatic tool to determine the song length that then gets added to the Songlength DB?
C:\temp>sldetect.exe 200mph_24_7.sid Processing... ; /200mph_24_7.sid 36ace184cdf1eb8e5fa1b69e5c092885=0:15.323 Total time: 00:00:09 (+659 milliseconds)
If the song lengths of 1:00 or more could be manually added to the songlength DB
6) Upper limit for the length of the loop is around 15 seconds. However this is a flexible limit, depending on the tempo of the loop. For example 8 bars in 4/4 time signature @ 120BPM (16 seconds) is perfectly okay. So no, you don't have to cut your loop one bar short just to meet the length requirement. :) For arrhythmic loops, stick to the max 15 second limit.
9) Because many SID players would play the loop only once until progressing to the next tune, please lengthen the playtime by manually copying the loop until the length of the tune is at least a minute, and then jump back to the beginning (for infinite looping on C64 and such players).
So @Krill, your idea of writing to SID only on init breaches the length rule #6.
Music must contain melody and rhythm. But if John Cage's 4'33" is music to you then, anything counts, even silence, so why even bother, a single RTS counts as a sid =)
Hmm, why not just make it a hard 16 second (802 frame) limit to avoid any doubt or quibbles?
As iAN's already pointed out, there's no real benefit to this. No current players would be affected by it, and it's really down to SID player implementers to add a feature like "don't skip to next track until at least a minute's worth of repeats of current track" if that's what you want.