On 3/10/2013 6:07 PM, Sean Burford wrote:
From the output it appears that one or more of the channel numbers is outside of the bounds 000 - 900.
That's correct. I dug into it a bit. The bank that is causing the problem has a couple of Marine VHF channels stored in it. I had forgotten that I had set that up. Banks can store channels from the pre-programmed memories.
The first one it is hitting which triggers the error is VHF Channel 9 which has an index of 0x2808. Marine VHF 16 is 0x280f.
I've also been meaning to look into why generating the bank page takes 48 seconds on my CPU. Seems like it's doing something a bit poorly.
The problem is easy to spot with the debugging print I put in for above. For each channel, it is getting/setting up the whole bank structure, in order to find out what banks it is in. If you've got 900 memories and 24 banks, get_bank_memories will get called 21,600 times.