Local changes on over-poliphony note act globally

Found a bug? Post it here.
Post Reply
iaon
Posts: 215
Joined: Mon Jun 02, 2014 7:56 am

Local changes on over-poliphony note act globally

Post by iaon » Mon Aug 31, 2015 6:55 am

Hi,

This bug (or inconsistency?) is best understood by checking the attached example. The top and bottom half of the pattern are identical, only in ch 0 the AnaGen's Poliphony goes from 3 to 2. When the lowest note is not played in the second half, its local Duty cycle changes (except the first one) are interpreted as global changes. The spontaneous expectation would be that the local changes are disregarded along with the note they refer to. On the other hand I guess you could say if you exceed poliphony unexpected things will happen.
Attachments
AnaDC_local_bug.sunvox
(3.83 KiB) Downloaded 307 times

User avatar
NightRadio
Site Admin
Posts: 3351
Joined: Fri Jan 23, 2004 12:28 am
Location: Ekaterinburg. Russia
Contact:

Re: Local changes on over-poliphony note act globally

Post by NightRadio » Mon Sep 07, 2015 6:26 pm

If is requested number of notes is larger than polyphony - old notes will be replaced by the new notes forever. In other words: any info about the old notes will be removed from Generator's memory.
So if you trying to change the local controller for the nonexistent note - it will be treated as the global ctl change. Such the logic of all SunVox generators :)

iaon
Posts: 215
Joined: Mon Jun 02, 2014 7:56 am

Re: Local changes on over-poliphony note act globally

Post by iaon » Mon Sep 07, 2015 9:43 pm

Yeah, it's more a behaviour than a bug, some Asimovian robot psychology is called for.

In this thread I question the wisdom of The Manual on the syntax for dynamically changing local controllers. Shouldn't the lines after the note start lose the module number? The way it's written they would be global changes.

User avatar
NightRadio
Site Admin
Posts: 3351
Joined: Fri Jan 23, 2004 12:28 am
Location: Ekaterinburg. Russia
Contact:

Re: Local changes on over-poliphony note act globally

Post by NightRadio » Wed Sep 09, 2015 1:46 pm

Here is the logic :)

Code: Select all

C3 80 01 0200 0000  //Here we save the module number 01
-- -- -- 0200 0001  //Module number is empty -> we should use the recently saved value (01) and set its local controller
If you want to set a global ctl - module number should not be empty.

iaon
Posts: 215
Joined: Mon Jun 02, 2014 7:56 am

Re: Local changes on over-poliphony note act globally

Post by iaon » Wed Sep 09, 2015 2:19 pm

Right, so then the manual has an error, no? It has the module number for every line in the local controller example.

User avatar
NightRadio
Site Admin
Posts: 3351
Joined: Fri Jan 23, 2004 12:28 am
Location: Ekaterinburg. Russia
Contact:

Re: Local changes on over-poliphony note act globally

Post by NightRadio » Fri Sep 11, 2015 10:56 pm

Right, so then the manual has an error, no?
Yes! :oops:
Fixed now. Thank you!

iaon
Posts: 215
Joined: Mon Jun 02, 2014 7:56 am

Re: Local changes on over-poliphony note act globally

Post by iaon » Sat Sep 12, 2015 12:15 am

:good:

Post Reply