Login:
Menu:
Post: Author:
FamiTracker > General > FamiTracker Talk > Hidden volume algorithm Owner: nicetas_c New post
Page 1 of 1 Sort:  
Hidden volume algorithm Posted: 2012-04-13 13:36 Reply | Quote
nicetas_c



Member for: 6129 days
Location: AB, CA
Status: Offline

#33263



Attachments:
exx.ftm (2 Kb)
Posted: 2012-04-13 17:00 Reply | Quote
danooct1

Avatar

Member for: 6398 days
Location: Dallas, TX
Status: Offline

#33271
your powers of deduction of minute things no one else would care to notice would be well suited to many other topics besides 8-bit music. pretty sure there's some physics thing you could be doing

_______________________
NO LONGER BREAKIN THE LAW
Posted: 2012-04-13 19:23  (Last Edited: 2012-04-13 19:27) Reply | Quote
rainwarrior

Avatar

Member for: 5696 days
Location: Canada
Status: Offline

#33286
You'd get a lot more accurate (and simpler) descriptions by inspecting the source code.

Exx = equivalent to a 1-entry volume macro sequence (and is overridden by volume macros).

The volume column is multiplied by the current sequence value (or Exx), divided by 15, then clipped to the current range (0-15). If the volume and sequence are both > 0, but the calculated volume is 0, it is changed to 1.


I don't think the NSF driver code is set up to handle out of range values. It'll probably just end up loading weird values from the volume table (or elsewhere) if you export an NSF. Don't ask me what; I don't care to reverse engineer failure.

Actually, out of bounds volume values for Exx or macros should probably be clamped on export to prevent problems like that. Sequence values you can't actually make normally, so maybe there's no problem there, but I guess this is a long-standing bug with Exx.

Page 1 of 1 Sort: