On Feb 26, 2:56=A0pm, Roy <roy.van.r...@[EMAIL PROTECTED]
> wrote:
>
> Two little problems/bugs. In the scan you need to add ptr1+
Yup.
> The other bug is in steps. If you want to go from step*0 and step*1 to
> step*2 and step*3 you need to add:
> dat step*2,step*2
Yup. Thanks for that, I saw the first one when I looked at the code
again, but this one would have taken me a bit to debug.
> I wrote a little program to calculate good M, N and steps, but its a
> very cpu/mem intensive program, and I didn't optimize it :) The best
> so far is: M:1000 N:1773 step:7556
My program generates only the 10 "+step*0" values and checks that the
minimum separation > 400. Got thousands of them in a few minutes.
> But I think the qscan is a little bit slower then you made it look,
> you forget the jmp 3 (50% of the time one more instruction)
Four of the ten triplets use the double jump, so 40%.
> and if you
> want to use one of the existing bomb-engines you need one more mov to
> set the pointer.
I don't use the existing bomb-engine because it scores 2-3 points less
than the 'smart' one I described before.
> In my tests it doesn't score as well as the one I posted earlier, but
almo=
st the same.
It doesn't score as well as pdQscan either, 3-4 points less on
average. A particular hard case is Schmidt's unheard_of which has a
short qscan and fast boot.
While the double-jump adds a cycle in four of ten cases, the problem
really is the decoder. How can we choose the correct one of four
locations in the fewest cycles?
All the same it works!
P. Kline


|