1
0
Fork 0
mirror of https://github.com/sockspls/badfish synced 2025-04-29 16:23:09 +00:00

Simplify printing of engine info

No functional change.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
Marco Costalba 2011-12-30 12:53:51 +01:00
parent 0a6532a39d
commit ad43ce1436
4 changed files with 29 additions and 35 deletions

View file

@ -40,19 +40,18 @@ int main(int argc, char* argv[]) {
Search::init(); Search::init();
Threads.init(); Threads.init();
if (argc < 2) cout << engine_info() << endl;
{
cout << engine_name() << " by " << engine_authors() << endl; if (argc == 1)
uci_loop(); uci_loop();
}
else if (string(argv[1]) == "bench") else if (string(argv[1]) == "bench")
benchmark(argc, argv); benchmark(argc, argv);
else else
cout << "Usage: stockfish bench [hash size = 128] [threads = 1] " cerr << "\nUsage: stockfish bench [hash size = 128] [threads = 1] "
<< "[limit = 12] [fen positions file = default] " << "[limit = 12] [fen positions file = default] "
<< "[limited by depth, time, nodes or perft = depth]" << endl; << "[limited by depth, time, nodes or perft = depth]" << endl;
Threads.exit(); Threads.exit();
return 0;
} }

View file

@ -52,50 +52,47 @@
using namespace std; using namespace std;
/// Version number. If EngineVersion is left empty, then AppTag plus
/// current date (in the format YYMMDD) is used as a version number.
static const string AppName = "Stockfish"; /// Version number. If Version is left empty, then Tag plus current
static const string EngineVersion = ""; /// date (in the format YYMMDD) is used as a version number.
static const string AppTag = "";
static const string Version = "";
static const string Tag = "";
/// engine_name() returns the full name of the current Stockfish version. /// engine_info() returns the full name of the current Stockfish version.
/// This will be either "Stockfish YYMMDD" (where YYMMDD is the date when /// This will be either "Stockfish YYMMDD" (where YYMMDD is the date when
/// the program was compiled) or "Stockfish <version number>", depending /// the program was compiled) or "Stockfish <version number>", depending
/// on whether the constant EngineVersion is empty. /// on whether Version is empty.
const string engine_name() { const string engine_info(bool to_uci) {
const string months("Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec"); const string months("Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec");
const string cpu64(Is64Bit ? " 64bit" : ""); const string cpu64(Is64Bit ? " 64bit" : "");
const string popcnt(HasPopCnt ? " SSE4.2" : ""); const string popcnt(HasPopCnt ? " SSE4.2" : "");
if (!EngineVersion.empty())
return AppName + " " + EngineVersion + cpu64 + popcnt;
stringstream s, date(__DATE__); // From compiler, format is "Sep 21 2008"
string month, day, year; string month, day, year;
stringstream s, date(__DATE__); // From compiler, format is "Sep 21 2008"
date >> month >> day >> year; if (Version.empty())
{
date >> month >> day >> year;
s << AppName + " " + AppTag + " " s << "Stockfish " << Tag
<< setfill('0') << year.substr(2) << setfill('0') << " " << year.substr(2)
<< setw(2) << (1 + months.find(month) / 4) << setw(2) << (1 + months.find(month) / 4)
<< setw(2) << day << cpu64 << popcnt; << setw(2) << day << cpu64 << popcnt;
}
else
s << "Stockfish " << Version << cpu64 << popcnt;
s << (to_uci ? "\nid author ": " by ")
<< "Tord Romstad, Marco Costalba and Joona Kiiski";
return s.str(); return s.str();
} }
/// Our brave developers! Required by UCI
const string engine_authors() {
return "Tord Romstad, Marco Costalba and Joona Kiiski";
}
/// Debug stuff. Helper functions used mainly for debugging purposes /// Debug stuff. Helper functions used mainly for debugging purposes
static uint64_t dbg_hit_cnt0; static uint64_t dbg_hit_cnt0;

View file

@ -26,8 +26,7 @@
#include "lock.h" #include "lock.h"
#include "types.h" #include "types.h"
extern const std::string engine_name(); extern const std::string engine_info(bool to_uci = false);
extern const std::string engine_authors();
extern int system_time(); extern int system_time();
extern int cpu_count(); extern int cpu_count();
extern void timed_wait(WaitCondition*, Lock*, int); extern void timed_wait(WaitCondition*, Lock*, int);

View file

@ -117,8 +117,7 @@ void uci_loop() {
<< "\npawn key: " << pos.pawn_key() << endl; << "\npawn key: " << pos.pawn_key() << endl;
else if (token == "uci") else if (token == "uci")
cout << "id name " << engine_name() cout << "id name " << engine_info(true)
<< "\nid author " << engine_authors()
<< "\n" << Options << "\n" << Options
<< "\nuciok" << endl; << "\nuciok" << endl;
else else