Memory declarations in merged programs
Posted: Sat Mar 12, 2011 3:00 am
Hi Frank,
I have two groups of effects performed by one FV-1. The first group uses the left channel, the second the right channel of the FV-1. Each of the two group has 5 effects to select. Let's denote them by L1...L5 and R1...R5. Only one effect from the 5 of the each group can be selected, but two effects from the both groups can be used together. For example:
L group off - R1 on
L2 on - R group off
L3 on - R5 on
etc.
This gives 36 combinations or programs which are loaded to FV-1 by a microcontroller. Modification of any of the resulting 36 codes leads to time-consuming and troublesome modification of many programs.
Therefore I assembled 2 x 5 effects (5 x Ln and 5 x Rn) separately and I am merging both machine codes during loading to FV-1 (so 80 ticks are for Lx, and 48 for Rn). It works but there is a question:
How to declare memories in separately assembled programs, whose machine codes are merged during loading to FV-1?
I have simply done that by declaring
mem RAM1 4000 ;in programs from L group
mem RAM2 28000 ; in programs from R group
Is there a better method, especially in case I will need more memory segments in one of the programs?
I have two groups of effects performed by one FV-1. The first group uses the left channel, the second the right channel of the FV-1. Each of the two group has 5 effects to select. Let's denote them by L1...L5 and R1...R5. Only one effect from the 5 of the each group can be selected, but two effects from the both groups can be used together. For example:
L group off - R1 on
L2 on - R group off
L3 on - R5 on
etc.
This gives 36 combinations or programs which are loaded to FV-1 by a microcontroller. Modification of any of the resulting 36 codes leads to time-consuming and troublesome modification of many programs.
Therefore I assembled 2 x 5 effects (5 x Ln and 5 x Rn) separately and I am merging both machine codes during loading to FV-1 (so 80 ticks are for Lx, and 48 for Rn). It works but there is a question:
How to declare memories in separately assembled programs, whose machine codes are merged during loading to FV-1?
I have simply done that by declaring
mem RAM1 4000 ;in programs from L group
mem RAM2 28000 ; in programs from R group
Is there a better method, especially in case I will need more memory segments in one of the programs?