Hi Pasi, > > I suggest thinking about the data structure use some more. In > > particular, using a list of struct mr_numbers is very inefficient. Using > > a pair of bitmaps for mr numbers (which can only be 0..255) would be way > > more efficient and probably would make the code much easier to write. > > I am not sure if I am quite getting what do you mean. Do you mean something > like: > struct mr_numbers { > unsigned int mr1 : 8, > unsigned int mr2 : 8, > unsigned int mr3 : 8, > unsigned int mr4 : 8 > }; No, I mean something like: unsigned int needed_mrs[8]; unsigned int obtained_mrs[8]; where each set bit represents a number at that particular offset. See how cbs / sms assemblies do this. Regards, -Denis