Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: get_ms() bug

Author: Jeff GAZET

Date: 14:02:13 05/13/04

Go up one level in this thread


>>>hi,
>>>
>>>All versions of my engine have got a bug since a few hours : you can't set a
>>>fixed depth :-(
>>>
>>>for those who are using something like this :
>>>
>>>int stop_time;
>>>stop_time=get_ms()+1000;
>>>
>>>this is buggy now, as get_ms()>2146589376
>>>and long is 2147483647
>>
>>More details about this code :
>>
>>int start_time, int stop_time;
>>init_time=3600; // for example
>>start_time=get_ms(); // get_ms() returns int
>>stop_time=start_time+(init_time*1000);
>>
>>A fiew minutes ago, get_ms() was >0 so start_time was something like 2146589376.
>>stop time was <0: something like -2146589376
>>so, every engines had a bug on my PC. They could be set to a fixed depth.
>>Because for a fixed depth, i set stop in an hour.
>>
>>Now, get_ms<0: -2146766904
>>stop_time too, and all is all right now !
>>
>>There was a bug for a fiew minutes, can you believe that ?

>Do you understand what "signed int" vs "unsigned int" means?

Yes, "signed int" is > 0 or <0 and "unsigned int" is >0.

>Time is almost always unsigned...

Well, the bug was that, using "int", a few hours ago, get_ms() was >0.
And get_ms()+an hour was <0.
When i set TSCP to depth 5, it went to depth 2
BigLion to depth 3, it crashed (divided by 0)
My engines could'nt give a move.
Now, get_ms()<0 and get_ms()+an hour too. So it's all right now.





This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.