This was due to a stupid bug. CrazyWa clears the first byte of the input buffer as soon as it extracted the first word for recognizing it as a command, so the next call to the command parser would read a new line. (Commands that could not be parsed immediately stay in the buffer, and would then be parsed on the next call, usually after the search aborted.) But I was parsing the 'level' command with a sscanf(inBuf, "level %d %d %d", ... , and this never saw anything, as the leading 'l' at that time was already clobbered. It should have done sscanf(inBuf+6, "%d %d %d", ... , similar to what I did for extracting parameters of the other commands.
So CrazyWas was always playing 40 moves/5 min. No wonder it performed below par in tournaments with a longer TC!
Anyway, Kyoto Shogi seems to work. Cannot really test it well, as there is no satisfactory way to do Kyoto Shogi in WinBoard yet. The alternating promotion and demotion of the pieces, and the possibility to drop pieces in promoted form, is just to weird. I guess I will add a standard variant 'kyoto' to WinBoard, which allows piece to be dropped in promoted form, and has some UI to enter such a move. (Perhaps clicking the selected piece in the holding to make it 'flip'?) And where a '+' promotion suffix on a move with an already promoted piece would be considered legal, and make the piece demote.
Crazywa currently requires the '+' suffix on every move except King moves (as Kings cannot promote), which seems redundant. OTOH, if the new standard variant should also be able to act as a parent to micro-Shogi, where promotion only occurs on capture, it does seem a good idea to keep indicating it explicitly. For dropping the promoted version of a piece it now uses alternative piece IDs (R, G, T and B instead of +P, +N, +L and +S). Not sure if this is tenable if it must be possible to associate the base and promoted types differently.
