diff -ruN orig_decompiled/BenchmarkUnit.java modified/BenchmarkUnit.java --- orig_decompiled/BenchmarkUnit.java 2009-07-04 20:43:08.000000000 +0400 +++ modified/BenchmarkUnit.java 2009-07-04 21:13:12.000000000 +0400 @@ -16,13 +16,13 @@ void calibrate() { - int i = loopsPerSecond(); + long i = loopsPerSecond(); if(i == 0) return; int j = testMilliseconds(i); if(j != 0) { - magnification = (100 * j) / (3 * i); + magnification = (int)((100 * j) / (3 * i)); return; } else { @@ -31,9 +31,9 @@ } } - int loopsPerSecond() + long loopsPerSecond() { - int i = 0; + long i = 0; StopWatch stopwatch = new StopWatch(); if(!unitAtom.initialize(0)) return 0; @@ -58,14 +58,14 @@ unitAtom.setLocal(); } - int testMilliseconds(int i) + int testMilliseconds(long i) { int j = 0; if(!unitAtom.initialize(0)) return 0; StopWatch stopwatch = new StopWatch(); stopwatch.StartTimer(); - int k = 3 * i; + long k = 3 * i; j = 0; while(k > 0) { @@ -85,7 +85,7 @@ int testScore() { - int i = loopsPerSecond(); + long i = loopsPerSecond(); if(i == 0) { lastScore = 0; @@ -93,7 +93,7 @@ } int j = testMilliseconds(i); if(j != 0) - j = (magnification * (3 * i)) / j; + j = (int)(magnification * (3 * i) / j); lastScore = j; return j; }