From fb6bc38118dc03877da9b3392e794d48e174d0c8 Mon Sep 17 00:00:00 2001 From: H.G. Muller Date: Sat, 26 Oct 2013 23:10:17 +0200 Subject: [PATCH 01/16] Add man page --- hachu.pod | 77 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 77 insertions(+), 0 deletions(-) create mode 100644 hachu.pod diff --git a/hachu.pod b/hachu.pod new file mode 100644 index 0000000..9faf905 --- /dev/null +++ b/hachu.pod @@ -0,0 +1,77 @@ +=head1 NAME + +hachu - xboard-compatible engine for Chu Shogi and other variants + + +=head1 SYNOPSIS + +B + + +=head1 DESCRIPTION + +B is a program that plays several shogi and chess variants, +currently sho shogi, chu shogi, dai shogi, makruk and shatranj. +In the future it might play more, and still larger shogi variants, +in particular tenjiku shogi. + +HaChu uses the xboard/winboard chess-engine protocol to communicate. +It thus can use XBoard as a graphical interface for the variants also supported by the latter. +Only XBoard 4.8 and later support chu shogi, +but sho shogi should already work under XBoard 4.7, +and Makruk and Shatranj under much older versions. +Dai shogi is not supported by XBoard yet. + +See xboard(6) for instructions about how to use B through xboard. +To start up quickly, you just need the command: B. +You can then use XBoard's New Variant dialog to select the variant you want to play. +To play chu shogi, it is essential that XBoard's 'show target squares' option is switched on; +otherwise the two-step lion moves can not be entered. + +Normally XBoard will use western-style chess symbols to represent the pieces. +But HaChu comes with a set of piece images in the shape of the Japenese kanji +for the names of the chu-shogi pieces. +These can be used in XBoard to get an oriental-style board display. +A settings file for configuring XBoard to use these pieces is also included with HaChu, +so that you can use the command B to start XBoard with HaChu for oriental-style chu-shogi. + +=head1 OPTIONS + +=over 8 + +=item B + +HaChu supports some options that can only be set interactively, +though XBoard's engine settings menu dialog. +These include an option for solving tsume problems +(checkmate problems where the winning side is only allowed to play checking moves). +There are also options to adapt it to various versions of the chu-shogi rules: +whether you can only promote on entering the promotion zone, +or whether moves inside or out of the zone (after one move delay) can also be used for promotion, +and whether repeats should be strictly forbidden, or only avoided like other losing moves. + + + +=back + +=head1 AVAILABILITY + +At http://hgm.nubati.net/cgi-bin/gitweb.cgi the source code can be obtained. + +=head1 SEE ALSO + +xboard(6) + +game rules: http://hgm.nubati.net/rules + +XBoard: http://hgm.nubati.net + +=head1 STANDARDS + +WinBoard, B(6) interface ("Chess Engine Communication Protocol") + +=head1 AUTHOR + +H.G.Muller . + +This manual page was generated with pod2man(1). -- 1.7.0.4 From 2a42e9ecc0c22593060a4de2dc0c5b63fa8750dd Mon Sep 17 00:00:00 2001 From: H.G. Muller Date: Sun, 27 Oct 2013 11:13:58 +0100 Subject: [PATCH 02/16] Add SVG kanji pieces A set of SVG Chu-Shogi pieces (bare kanji) suitable for use in XBoard is added to the project. Some of the pieces not currently used by XBoard (+GB, +Ph, +Ky, +DE) are left in the set. --- svg/BlackAdvisor.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackArchbishop.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackBishop.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackCanon.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackClaw.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackCobra.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackCommoner.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackCrownedBishop.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackCrownedRook.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackDolphin.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/BlackElephant.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackGold.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackGoldPawn.svg | 79 +++++++++++++++++++++++++++++++++++ svg/BlackHCrown.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/BlackHSword.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackHawk.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/BlackKing.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackKnight.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/BlackLance.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackLeopard.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackLion.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackMarshall.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackPawn.svg | 22 ++++++++++ svg/BlackPrincess.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/BlackPromoBishop.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/BlackPromoDragon.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/BlackPromoHSword.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/BlackPromoHorse.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/BlackPromoRook.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/BlackPromoSword.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/BlackQueen.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackRook.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackSword.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/BlackUnicorn.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/Blackflying_stag.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/WhiteAdvisor.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteArchbishop.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteBishop.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteCanon.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteClaw.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteCobra.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteCommoner.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteCrownedBishop.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteCrownedRook.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteDolphin.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/WhiteElephant.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteGold.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteGoldPawn.svg | 80 +++++++++++++++++++++++++++++++++++ svg/WhiteHCrown.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/WhiteHSword.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteHawk.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/WhiteKing.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteKnight.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/WhiteLance.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteLeopard.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteLion.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteMarshall.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhitePawn.svg | 22 ++++++++++ svg/WhitePrincess.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/WhitePromoBishop.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/WhitePromoDragon.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/WhitePromoHSword.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/WhitePromoHorse.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/WhitePromogold_general.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/WhiteQueen.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteRook.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteSword.svg | 86 ++++++++++++++++++++++++++++++++++++++ svg/WhiteUnicorn.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/WhiteWhiteChancellor.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/crown_prince.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/promoted_go_between.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/promoted_kylin.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/promoted_phoenix.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/w_crown_prince.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/w_promoted_go_between.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/w_promoted_kylin.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/w_promoted_phoenix.svg | 90 ++++++++++++++++++++++++++++++++++++++++ 77 files changed, 6613 insertions(+), 0 deletions(-) create mode 100644 svg/BlackAdvisor.svg create mode 100644 svg/BlackArchbishop.svg create mode 100644 svg/BlackBishop.svg create mode 100644 svg/BlackCanon.svg create mode 100644 svg/BlackClaw.svg create mode 100644 svg/BlackCobra.svg create mode 100644 svg/BlackCommoner.svg create mode 100644 svg/BlackCrownedBishop.svg create mode 100644 svg/BlackCrownedRook.svg create mode 100644 svg/BlackDolphin.svg create mode 100644 svg/BlackElephant.svg create mode 100644 svg/BlackGold.svg create mode 100644 svg/BlackGoldPawn.svg create mode 100644 svg/BlackHCrown.svg create mode 100644 svg/BlackHSword.svg create mode 100644 svg/BlackHawk.svg create mode 100644 svg/BlackKing.svg create mode 100644 svg/BlackKnight.svg create mode 100644 svg/BlackLance.svg create mode 100644 svg/BlackLeopard.svg create mode 100644 svg/BlackLion.svg create mode 100644 svg/BlackMarshall.svg create mode 100644 svg/BlackPawn.svg create mode 100644 svg/BlackPrincess.svg create mode 100644 svg/BlackPromoBishop.svg create mode 100644 svg/BlackPromoDragon.svg create mode 100644 svg/BlackPromoHSword.svg create mode 100644 svg/BlackPromoHorse.svg create mode 100644 svg/BlackPromoRook.svg create mode 100644 svg/BlackPromoSword.svg create mode 100644 svg/BlackQueen.svg create mode 100644 svg/BlackRook.svg create mode 100644 svg/BlackSword.svg create mode 100644 svg/BlackUnicorn.svg create mode 100644 svg/Blackflying_stag.svg create mode 100644 svg/WhiteAdvisor.svg create mode 100644 svg/WhiteArchbishop.svg create mode 100644 svg/WhiteBishop.svg create mode 100644 svg/WhiteCanon.svg create mode 100644 svg/WhiteClaw.svg create mode 100644 svg/WhiteCobra.svg create mode 100644 svg/WhiteCommoner.svg create mode 100644 svg/WhiteCrownedBishop.svg create mode 100644 svg/WhiteCrownedRook.svg create mode 100644 svg/WhiteDolphin.svg create mode 100644 svg/WhiteElephant.svg create mode 100644 svg/WhiteGold.svg create mode 100644 svg/WhiteGoldPawn.svg create mode 100644 svg/WhiteHCrown.svg create mode 100644 svg/WhiteHSword.svg create mode 100644 svg/WhiteHawk.svg create mode 100644 svg/WhiteKing.svg create mode 100644 svg/WhiteKnight.svg create mode 100644 svg/WhiteLance.svg create mode 100644 svg/WhiteLeopard.svg create mode 100644 svg/WhiteLion.svg create mode 100644 svg/WhiteMarshall.svg create mode 100644 svg/WhitePawn.svg create mode 100644 svg/WhitePrincess.svg create mode 100644 svg/WhitePromoBishop.svg create mode 100644 svg/WhitePromoDragon.svg create mode 100644 svg/WhitePromoHSword.svg create mode 100644 svg/WhitePromoHorse.svg create mode 100644 svg/WhitePromogold_general.svg create mode 100644 svg/WhiteQueen.svg create mode 100644 svg/WhiteRook.svg create mode 100644 svg/WhiteSword.svg create mode 100644 svg/WhiteUnicorn.svg create mode 100644 svg/WhiteWhiteChancellor.svg create mode 100644 svg/crown_prince.svg create mode 100644 svg/promoted_go_between.svg create mode 100644 svg/promoted_kylin.svg create mode 100644 svg/promoted_phoenix.svg create mode 100644 svg/w_crown_prince.svg create mode 100644 svg/w_promoted_go_between.svg create mode 100644 svg/w_promoted_kylin.svg create mode 100644 svg/w_promoted_phoenix.svg diff --git a/svg/BlackAdvisor.svg b/svg/BlackAdvisor.svg new file mode 100644 index 0000000..90e1f51 --- /dev/null +++ b/svg/BlackAdvisor.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackArchbishop.svg b/svg/BlackArchbishop.svg new file mode 100644 index 0000000..900010a --- /dev/null +++ b/svg/BlackArchbishop.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackBishop.svg b/svg/BlackBishop.svg new file mode 100644 index 0000000..d816549 --- /dev/null +++ b/svg/BlackBishop.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackCanon.svg b/svg/BlackCanon.svg new file mode 100644 index 0000000..01ec7a0 --- /dev/null +++ b/svg/BlackCanon.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackClaw.svg b/svg/BlackClaw.svg new file mode 100644 index 0000000..70b5fb7 --- /dev/null +++ b/svg/BlackClaw.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackCobra.svg b/svg/BlackCobra.svg new file mode 100644 index 0000000..e7c6b0e --- /dev/null +++ b/svg/BlackCobra.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackCommoner.svg b/svg/BlackCommoner.svg new file mode 100644 index 0000000..c3146ac --- /dev/null +++ b/svg/BlackCommoner.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackCrownedBishop.svg b/svg/BlackCrownedBishop.svg new file mode 100644 index 0000000..b8fa34f --- /dev/null +++ b/svg/BlackCrownedBishop.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackCrownedRook.svg b/svg/BlackCrownedRook.svg new file mode 100644 index 0000000..4c65dd6 --- /dev/null +++ b/svg/BlackCrownedRook.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackDolphin.svg b/svg/BlackDolphin.svg new file mode 100644 index 0000000..4ed4ca6 --- /dev/null +++ b/svg/BlackDolphin.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/BlackElephant.svg b/svg/BlackElephant.svg new file mode 100644 index 0000000..c18bbe6 --- /dev/null +++ b/svg/BlackElephant.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackGold.svg b/svg/BlackGold.svg new file mode 100644 index 0000000..833011f --- /dev/null +++ b/svg/BlackGold.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackGoldPawn.svg b/svg/BlackGoldPawn.svg new file mode 100644 index 0000000..94957c5 --- /dev/null +++ b/svg/BlackGoldPawn.svg @@ -0,0 +1,79 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackHCrown.svg b/svg/BlackHCrown.svg new file mode 100644 index 0000000..f896815 --- /dev/null +++ b/svg/BlackHCrown.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/BlackHSword.svg b/svg/BlackHSword.svg new file mode 100644 index 0000000..346eb5f --- /dev/null +++ b/svg/BlackHSword.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackHawk.svg b/svg/BlackHawk.svg new file mode 100644 index 0000000..8447fad --- /dev/null +++ b/svg/BlackHawk.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/BlackKing.svg b/svg/BlackKing.svg new file mode 100644 index 0000000..7b8513b --- /dev/null +++ b/svg/BlackKing.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackKnight.svg b/svg/BlackKnight.svg new file mode 100644 index 0000000..9c585de --- /dev/null +++ b/svg/BlackKnight.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/BlackLance.svg b/svg/BlackLance.svg new file mode 100644 index 0000000..9f72f23 --- /dev/null +++ b/svg/BlackLance.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackLeopard.svg b/svg/BlackLeopard.svg new file mode 100644 index 0000000..1f5d627 --- /dev/null +++ b/svg/BlackLeopard.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackLion.svg b/svg/BlackLion.svg new file mode 100644 index 0000000..850ce36 --- /dev/null +++ b/svg/BlackLion.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackMarshall.svg b/svg/BlackMarshall.svg new file mode 100644 index 0000000..ce860b3 --- /dev/null +++ b/svg/BlackMarshall.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackPawn.svg b/svg/BlackPawn.svg new file mode 100644 index 0000000..f61dbf8 --- /dev/null +++ b/svg/BlackPawn.svg @@ -0,0 +1,22 @@ + + + + + + + + image/svg+xml + + + + + + + + + + + + + + \ No newline at end of file diff --git a/svg/BlackPrincess.svg b/svg/BlackPrincess.svg new file mode 100644 index 0000000..ad07843 --- /dev/null +++ b/svg/BlackPrincess.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/BlackPromoBishop.svg b/svg/BlackPromoBishop.svg new file mode 100644 index 0000000..0f6b3ae --- /dev/null +++ b/svg/BlackPromoBishop.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/BlackPromoDragon.svg b/svg/BlackPromoDragon.svg new file mode 100644 index 0000000..2a7e046 --- /dev/null +++ b/svg/BlackPromoDragon.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/BlackPromoHSword.svg b/svg/BlackPromoHSword.svg new file mode 100644 index 0000000..ae0cee7 --- /dev/null +++ b/svg/BlackPromoHSword.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/BlackPromoHorse.svg b/svg/BlackPromoHorse.svg new file mode 100644 index 0000000..6baf926 --- /dev/null +++ b/svg/BlackPromoHorse.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/BlackPromoRook.svg b/svg/BlackPromoRook.svg new file mode 100644 index 0000000..833a367 --- /dev/null +++ b/svg/BlackPromoRook.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/BlackPromoSword.svg b/svg/BlackPromoSword.svg new file mode 100644 index 0000000..5036393 --- /dev/null +++ b/svg/BlackPromoSword.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/BlackQueen.svg b/svg/BlackQueen.svg new file mode 100644 index 0000000..fae2b63 --- /dev/null +++ b/svg/BlackQueen.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackRook.svg b/svg/BlackRook.svg new file mode 100644 index 0000000..4632ae2 --- /dev/null +++ b/svg/BlackRook.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackSword.svg b/svg/BlackSword.svg new file mode 100644 index 0000000..5068e03 --- /dev/null +++ b/svg/BlackSword.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/BlackUnicorn.svg b/svg/BlackUnicorn.svg new file mode 100644 index 0000000..9414316 --- /dev/null +++ b/svg/BlackUnicorn.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/Blackflying_stag.svg b/svg/Blackflying_stag.svg new file mode 100644 index 0000000..27b1281 --- /dev/null +++ b/svg/Blackflying_stag.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhiteAdvisor.svg b/svg/WhiteAdvisor.svg new file mode 100644 index 0000000..97fcac3 --- /dev/null +++ b/svg/WhiteAdvisor.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteArchbishop.svg b/svg/WhiteArchbishop.svg new file mode 100644 index 0000000..5cb69d0 --- /dev/null +++ b/svg/WhiteArchbishop.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteBishop.svg b/svg/WhiteBishop.svg new file mode 100644 index 0000000..80e2a77 --- /dev/null +++ b/svg/WhiteBishop.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteCanon.svg b/svg/WhiteCanon.svg new file mode 100644 index 0000000..323ab69 --- /dev/null +++ b/svg/WhiteCanon.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteClaw.svg b/svg/WhiteClaw.svg new file mode 100644 index 0000000..a5f7dc3 --- /dev/null +++ b/svg/WhiteClaw.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteCobra.svg b/svg/WhiteCobra.svg new file mode 100644 index 0000000..d20eda6 --- /dev/null +++ b/svg/WhiteCobra.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteCommoner.svg b/svg/WhiteCommoner.svg new file mode 100644 index 0000000..9b1148b --- /dev/null +++ b/svg/WhiteCommoner.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteCrownedBishop.svg b/svg/WhiteCrownedBishop.svg new file mode 100644 index 0000000..7f3c6f2 --- /dev/null +++ b/svg/WhiteCrownedBishop.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteCrownedRook.svg b/svg/WhiteCrownedRook.svg new file mode 100644 index 0000000..a33d038 --- /dev/null +++ b/svg/WhiteCrownedRook.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteDolphin.svg b/svg/WhiteDolphin.svg new file mode 100644 index 0000000..5c58d89 --- /dev/null +++ b/svg/WhiteDolphin.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhiteElephant.svg b/svg/WhiteElephant.svg new file mode 100644 index 0000000..7235a0f --- /dev/null +++ b/svg/WhiteElephant.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteGold.svg b/svg/WhiteGold.svg new file mode 100644 index 0000000..e7703d2 --- /dev/null +++ b/svg/WhiteGold.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteGoldPawn.svg b/svg/WhiteGoldPawn.svg new file mode 100644 index 0000000..5e92d1b --- /dev/null +++ b/svg/WhiteGoldPawn.svg @@ -0,0 +1,80 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + diff --git a/svg/WhiteHCrown.svg b/svg/WhiteHCrown.svg new file mode 100644 index 0000000..2ba78de --- /dev/null +++ b/svg/WhiteHCrown.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhiteHSword.svg b/svg/WhiteHSword.svg new file mode 100644 index 0000000..2c9a69f --- /dev/null +++ b/svg/WhiteHSword.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteHawk.svg b/svg/WhiteHawk.svg new file mode 100644 index 0000000..97938bc --- /dev/null +++ b/svg/WhiteHawk.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhiteKing.svg b/svg/WhiteKing.svg new file mode 100644 index 0000000..c1318eb --- /dev/null +++ b/svg/WhiteKing.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteKnight.svg b/svg/WhiteKnight.svg new file mode 100644 index 0000000..2a05f85 --- /dev/null +++ b/svg/WhiteKnight.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhiteLance.svg b/svg/WhiteLance.svg new file mode 100644 index 0000000..fc29003 --- /dev/null +++ b/svg/WhiteLance.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteLeopard.svg b/svg/WhiteLeopard.svg new file mode 100644 index 0000000..5b35fba --- /dev/null +++ b/svg/WhiteLeopard.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteLion.svg b/svg/WhiteLion.svg new file mode 100644 index 0000000..3b5d12b --- /dev/null +++ b/svg/WhiteLion.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteMarshall.svg b/svg/WhiteMarshall.svg new file mode 100644 index 0000000..0795575 --- /dev/null +++ b/svg/WhiteMarshall.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhitePawn.svg b/svg/WhitePawn.svg new file mode 100644 index 0000000..73f0f21 --- /dev/null +++ b/svg/WhitePawn.svg @@ -0,0 +1,22 @@ + + + + + + + + image/svg+xml + + + + + + + + + + + + + + \ No newline at end of file diff --git a/svg/WhitePrincess.svg b/svg/WhitePrincess.svg new file mode 100644 index 0000000..d6fb516 --- /dev/null +++ b/svg/WhitePrincess.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhitePromoBishop.svg b/svg/WhitePromoBishop.svg new file mode 100644 index 0000000..bdf60fc --- /dev/null +++ b/svg/WhitePromoBishop.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhitePromoDragon.svg b/svg/WhitePromoDragon.svg new file mode 100644 index 0000000..b3b4179 --- /dev/null +++ b/svg/WhitePromoDragon.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhitePromoHSword.svg b/svg/WhitePromoHSword.svg new file mode 100644 index 0000000..e0c0311 --- /dev/null +++ b/svg/WhitePromoHSword.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhitePromoHorse.svg b/svg/WhitePromoHorse.svg new file mode 100644 index 0000000..5a5f1ba --- /dev/null +++ b/svg/WhitePromoHorse.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhitePromogold_general.svg b/svg/WhitePromogold_general.svg new file mode 100644 index 0000000..51a1c23 --- /dev/null +++ b/svg/WhitePromogold_general.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhiteQueen.svg b/svg/WhiteQueen.svg new file mode 100644 index 0000000..a2ce9c0 --- /dev/null +++ b/svg/WhiteQueen.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteRook.svg b/svg/WhiteRook.svg new file mode 100644 index 0000000..a79b6eb --- /dev/null +++ b/svg/WhiteRook.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteSword.svg b/svg/WhiteSword.svg new file mode 100644 index 0000000..be763c2 --- /dev/null +++ b/svg/WhiteSword.svg @@ -0,0 +1,86 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/svg/WhiteUnicorn.svg b/svg/WhiteUnicorn.svg new file mode 100644 index 0000000..a2fa0dd --- /dev/null +++ b/svg/WhiteUnicorn.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhiteWhiteChancellor.svg b/svg/WhiteWhiteChancellor.svg new file mode 100644 index 0000000..d6d7f39 --- /dev/null +++ b/svg/WhiteWhiteChancellor.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/crown_prince.svg b/svg/crown_prince.svg new file mode 100644 index 0000000..b4820e5 --- /dev/null +++ b/svg/crown_prince.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/promoted_go_between.svg b/svg/promoted_go_between.svg new file mode 100644 index 0000000..1b9a56a --- /dev/null +++ b/svg/promoted_go_between.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/promoted_kylin.svg b/svg/promoted_kylin.svg new file mode 100644 index 0000000..87442a0 --- /dev/null +++ b/svg/promoted_kylin.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/promoted_phoenix.svg b/svg/promoted_phoenix.svg new file mode 100644 index 0000000..90cefad --- /dev/null +++ b/svg/promoted_phoenix.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/w_crown_prince.svg b/svg/w_crown_prince.svg new file mode 100644 index 0000000..62cf4c4 --- /dev/null +++ b/svg/w_crown_prince.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/w_promoted_go_between.svg b/svg/w_promoted_go_between.svg new file mode 100644 index 0000000..6ffad44 --- /dev/null +++ b/svg/w_promoted_go_between.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/w_promoted_kylin.svg b/svg/w_promoted_kylin.svg new file mode 100644 index 0000000..cbb39ac --- /dev/null +++ b/svg/w_promoted_kylin.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/w_promoted_phoenix.svg b/svg/w_promoted_phoenix.svg new file mode 100644 index 0000000..3570b67 --- /dev/null +++ b/svg/w_promoted_phoenix.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + -- 1.7.0.4 From bb8fda0d3dbb4f783df71ff924eedcb163d360ea Mon Sep 17 00:00:00 2001 From: H.G. Muller Date: Sun, 27 Oct 2013 12:43:28 +0100 Subject: [PATCH 03/16] Add XBoard settings files for Chu and Sho shogi --- svg/chu | 42 ++++++++++++++++++++++++++++++++++++++++++ svg/sho | 28 ++++++++++++++++++++++++++++ 2 files changed, 70 insertions(+), 0 deletions(-) create mode 100644 svg/chu create mode 100644 svg/sho diff --git a/svg/chu b/svg/chu new file mode 100644 index 0000000..45195ef --- /dev/null +++ b/svg/chu @@ -0,0 +1,42 @@ +; +; settings for oriental Chu-Shogi theme +; +-variant chu +; +; pieces: supplied chu-shogi svg's, and flip them in flipView +; +-pid ~~/themes/chu +-flipBlack true +-trueColors true +; +; board: no checkering (both w. and w.o. texture) +; +-liteBackTextureFile "~~/themes/textures/wood_l.png" +-darkBackTextureFile "~~/themes/textures/wood_l.png" +-lightSquareColor #FF8040 +-darkSquareColor #FF8040 +; +; detour under-promotion is less convenient when non-pawns promote +; +-sweepPromotions false +; +; legality testing must be on for double-moves to work, no adjudication +; +-testLegality true +-trivialDraws false +-materialDraws false +; +; make the Lion roar on double captures +; +-roarSound roar.wav +; +; redefine default engine +; +-fcp hachu +-scp hachu +; +; set up own persistence file, used for this theme only +; +-settingsFile ~/.xboard-chu-rc +-saveSettingsFile ~/.xboard-chu-rc + diff --git a/svg/sho b/svg/sho new file mode 100644 index 0000000..7b48f27 --- /dev/null +++ b/svg/sho @@ -0,0 +1,28 @@ +; +; additional settings for Sho Shogi +; +-variant shogi +; +; size overrides +; +-boardWidth 9 +-boardHeight 9 +-holdingsSize 0 +; +; add Elephant to piece set +; +-pieceToCharTable "PNBRLSE..G.+++++++Kpnbrlse..g.+++++++k" +; +; provide initial position +; +-loadPositionFile "~~/themes/conf/sho.fen" +; +; must play with legality testing off, for +E and mate +; +-testLegality false +; +; redefine default engine +; +-fcp hachu +-scp hachu + -- 1.7.0.4 From c6e01efccf2c5c316c2adc69e7e79bcc8749c1eb Mon Sep 17 00:00:00 2001 From: H.G. Muller Date: Wed, 30 Oct 2013 14:49:44 +0100 Subject: [PATCH 04/16] Rename some svg kanji pieces --- svg/BlackChancellor.svg | 90 +++++++++++++++++++++++++++++++++++++++++ svg/BlackDrunk.svg | 90 +++++++++++++++++++++++++++++++++++++++++ svg/BlackKylin.svg | 90 +++++++++++++++++++++++++++++++++++++++++ svg/BlackPhoenix.svg | 90 +++++++++++++++++++++++++++++++++++++++++ svg/BlackPrince.svg | 90 +++++++++++++++++++++++++++++++++++++++++ svg/Blackflying_stag.svg | 90 ----------------------------------------- svg/WhiteChancellor.svg | 90 +++++++++++++++++++++++++++++++++++++++++ svg/WhiteDrunk.svg | 90 +++++++++++++++++++++++++++++++++++++++++ svg/WhiteKylin.svg | 90 +++++++++++++++++++++++++++++++++++++++++ svg/WhitePhoenix.svg | 90 +++++++++++++++++++++++++++++++++++++++++ svg/WhitePrince.svg | 90 +++++++++++++++++++++++++++++++++++++++++ svg/WhiteWhiteChancellor.svg | 90 ----------------------------------------- svg/crown_prince.svg | 90 ----------------------------------------- svg/promoted_go_between.svg | 90 ----------------------------------------- svg/promoted_kylin.svg | 90 ----------------------------------------- svg/promoted_phoenix.svg | 90 ----------------------------------------- svg/w_crown_prince.svg | 90 ----------------------------------------- svg/w_promoted_go_between.svg | 90 ----------------------------------------- svg/w_promoted_kylin.svg | 90 ----------------------------------------- svg/w_promoted_phoenix.svg | 90 ----------------------------------------- 20 files changed, 900 insertions(+), 900 deletions(-) create mode 100644 svg/BlackChancellor.svg create mode 100644 svg/BlackDrunk.svg create mode 100644 svg/BlackKylin.svg create mode 100644 svg/BlackPhoenix.svg create mode 100644 svg/BlackPrince.svg delete mode 100644 svg/Blackflying_stag.svg create mode 100644 svg/WhiteChancellor.svg create mode 100644 svg/WhiteDrunk.svg create mode 100644 svg/WhiteKylin.svg create mode 100644 svg/WhitePhoenix.svg create mode 100644 svg/WhitePrince.svg delete mode 100644 svg/WhiteWhiteChancellor.svg delete mode 100644 svg/crown_prince.svg delete mode 100644 svg/promoted_go_between.svg delete mode 100644 svg/promoted_kylin.svg delete mode 100644 svg/promoted_phoenix.svg delete mode 100644 svg/w_crown_prince.svg delete mode 100644 svg/w_promoted_go_between.svg delete mode 100644 svg/w_promoted_kylin.svg delete mode 100644 svg/w_promoted_phoenix.svg diff --git a/svg/BlackChancellor.svg b/svg/BlackChancellor.svg new file mode 100644 index 0000000..27b1281 --- /dev/null +++ b/svg/BlackChancellor.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/BlackDrunk.svg b/svg/BlackDrunk.svg new file mode 100644 index 0000000..6ffad44 --- /dev/null +++ b/svg/BlackDrunk.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/BlackKylin.svg b/svg/BlackKylin.svg new file mode 100644 index 0000000..cbb39ac --- /dev/null +++ b/svg/BlackKylin.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/BlackPhoenix.svg b/svg/BlackPhoenix.svg new file mode 100644 index 0000000..3570b67 --- /dev/null +++ b/svg/BlackPhoenix.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/BlackPrince.svg b/svg/BlackPrince.svg new file mode 100644 index 0000000..62cf4c4 --- /dev/null +++ b/svg/BlackPrince.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/Blackflying_stag.svg b/svg/Blackflying_stag.svg deleted file mode 100644 index 27b1281..0000000 --- a/svg/Blackflying_stag.svg +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - diff --git a/svg/WhiteChancellor.svg b/svg/WhiteChancellor.svg new file mode 100644 index 0000000..d6d7f39 --- /dev/null +++ b/svg/WhiteChancellor.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhiteDrunk.svg b/svg/WhiteDrunk.svg new file mode 100644 index 0000000..1b9a56a --- /dev/null +++ b/svg/WhiteDrunk.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhiteKylin.svg b/svg/WhiteKylin.svg new file mode 100644 index 0000000..87442a0 --- /dev/null +++ b/svg/WhiteKylin.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhitePhoenix.svg b/svg/WhitePhoenix.svg new file mode 100644 index 0000000..90cefad --- /dev/null +++ b/svg/WhitePhoenix.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhitePrince.svg b/svg/WhitePrince.svg new file mode 100644 index 0000000..b4820e5 --- /dev/null +++ b/svg/WhitePrince.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhiteWhiteChancellor.svg b/svg/WhiteWhiteChancellor.svg deleted file mode 100644 index d6d7f39..0000000 --- a/svg/WhiteWhiteChancellor.svg +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - diff --git a/svg/crown_prince.svg b/svg/crown_prince.svg deleted file mode 100644 index b4820e5..0000000 --- a/svg/crown_prince.svg +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - diff --git a/svg/promoted_go_between.svg b/svg/promoted_go_between.svg deleted file mode 100644 index 1b9a56a..0000000 --- a/svg/promoted_go_between.svg +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - diff --git a/svg/promoted_kylin.svg b/svg/promoted_kylin.svg deleted file mode 100644 index 87442a0..0000000 --- a/svg/promoted_kylin.svg +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - diff --git a/svg/promoted_phoenix.svg b/svg/promoted_phoenix.svg deleted file mode 100644 index 90cefad..0000000 --- a/svg/promoted_phoenix.svg +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - diff --git a/svg/w_crown_prince.svg b/svg/w_crown_prince.svg deleted file mode 100644 index 62cf4c4..0000000 --- a/svg/w_crown_prince.svg +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - diff --git a/svg/w_promoted_go_between.svg b/svg/w_promoted_go_between.svg deleted file mode 100644 index 6ffad44..0000000 --- a/svg/w_promoted_go_between.svg +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - diff --git a/svg/w_promoted_kylin.svg b/svg/w_promoted_kylin.svg deleted file mode 100644 index cbb39ac..0000000 --- a/svg/w_promoted_kylin.svg +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - diff --git a/svg/w_promoted_phoenix.svg b/svg/w_promoted_phoenix.svg deleted file mode 100644 index 3570b67..0000000 --- a/svg/w_promoted_phoenix.svg +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - -- 1.7.0.4 From 00ed63a22d5e920072b2dcbbc33b04aee6d7c56e Mon Sep 17 00:00:00 2001 From: H.G. Muller Date: Wed, 30 Oct 2013 20:28:21 +0100 Subject: [PATCH 05/16] Fix -roarSound in chu settings file --- svg/chu | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/svg/chu b/svg/chu index 45195ef..56ad943 100644 --- a/svg/chu +++ b/svg/chu @@ -28,7 +28,7 @@ ; ; make the Lion roar on double captures ; --roarSound roar.wav +-soundRoar roar.wav ; ; redefine default engine ; -- 1.7.0.4 From d87c0507732125b567aa2b31f521761408293367 Mon Sep 17 00:00:00 2001 From: H.G. Muller Date: Sun, 3 Nov 2013 17:51:34 +0100 Subject: [PATCH 06/16] Fix Makruk start position --- hachu.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/hachu.c b/hachu.c index e47cf82..8bc625a 100644 --- a/hachu.c +++ b/hachu.c @@ -424,7 +424,7 @@ char shoArray[] = "LNSGKGSNL/.B..:DE..R./PPPPPPPPP/........./........./......... char chessArray[] = "RNB:FKKBNR/PPPPPPPP/......../......../......../......../pppppppp/rnb:fkkbnr"; char lionArray[] = "R:LNB:FKKBNR/PPPPPPPP/......../......../......../......../pppppppp/r:lnb:fkkbnr"; char shatArray[]= "RNBK:FKBNR/PPPPPPPP/......../......../......../......../pppppppp/rnbk:fkbnr"; -char thaiArray[]= "RNSK:SMSNR/......../PPPPPPPP/......../......../pppppppp/......../rnsk:smsnr"; +char thaiArray[]= "RNSK:SMSNR/......../PPPPPPPP/......../......../pppppppp/......../rns:smksnr"; typedef struct { int boardWidth, boardFiles, boardRanks, zoneDepth, varNr; // board sizes -- 1.7.0.4 From ac84eb1d772a4a296f2e8febd4804ea17b2a434e Mon Sep 17 00:00:00 2001 From: H.G. Muller Date: Sun, 3 Nov 2013 17:52:39 +0100 Subject: [PATCH 07/16] Bump version to 0.17 --- hachu.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/hachu.c b/hachu.c index 8bc625a..b3cd8c9 100644 --- a/hachu.c +++ b/hachu.c @@ -10,7 +10,7 @@ // promotions by pieces with Lion power stepping in & out the zone in same turn // promotion on capture -#define VERSION "0.16 k+ky" +#define VERSION "0.17" //define PATH level==0 /*|| path[0] == 0x3490a && (level==1 || path[1] == 0x285b3 && (level == 2 || path[2] == 0x8710f && (level == 3 /*|| path[3] == 0x3e865 && (level == 4 || path[4] == 0x4b865 && (level == 5)))))*/ #define PATH 0 -- 1.7.0.4 From 053d8cd0b12c57b4c41cf19399b0502b8bcda158 Mon Sep 17 00:00:00 2001 From: H.G. Muller Date: Wed, 8 Jan 2014 16:40:38 +0100 Subject: [PATCH 08/16] Fix naming of kanji SVGs For sente +C was depicted as +S, wile +S had no image at all. --- svg/WhitePromoHSword.svg | 36 ++++++++-------- svg/WhitePromoRook.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/WhitePromoSword.svg | 90 ++++++++++++++++++++++++++++++++++++++++ svg/WhitePromogold_general.svg | 90 ---------------------------------------- 4 files changed, 198 insertions(+), 108 deletions(-) create mode 100644 svg/WhitePromoRook.svg create mode 100644 svg/WhitePromoSword.svg delete mode 100644 svg/WhitePromogold_general.svg diff --git a/svg/WhitePromoHSword.svg b/svg/WhitePromoHSword.svg index e0c0311..300907d 100644 --- a/svg/WhitePromoHSword.svg +++ b/svg/WhitePromoHSword.svg @@ -1,7 +1,7 @@ - + + sodipodi:docname="promoted_copper_general.svg"> + id="metadata3807"> @@ -41,7 +41,7 @@ inkscape:pageshadow="2" inkscape:window-width="640" inkscape:window-height="480" - id="namedview4331" + id="namedview3805" showgrid="false" fit-margin-top="5" fit-margin-left="3" @@ -50,39 +50,39 @@ inkscape:zoom="5.2641848" inkscape:cx="23.014692" inkscape:cy="28.519228" - inkscape:window-x="17" - inkscape:window-y="129" + inkscape:window-x="0" + inkscape:window-y="125" inkscape:window-maximized="0" - inkscape:current-layer="svg4318" /> + inkscape:current-layer="svg3792" /> + id="defs3794"> + transform="matrix(3.98506,0,0,3.98506,2.4714539,4.8363642)"> diff --git a/svg/WhitePromoRook.svg b/svg/WhitePromoRook.svg new file mode 100644 index 0000000..51a1c23 --- /dev/null +++ b/svg/WhitePromoRook.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhitePromoSword.svg b/svg/WhitePromoSword.svg new file mode 100644 index 0000000..e0c0311 --- /dev/null +++ b/svg/WhitePromoSword.svg @@ -0,0 +1,90 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/svg/WhitePromogold_general.svg b/svg/WhitePromogold_general.svg deleted file mode 100644 index 51a1c23..0000000 --- a/svg/WhitePromogold_general.svg +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - -- 1.7.0.4 From 054bc1c2d5fd5124a0d9454669c3603190fd77f8 Mon Sep 17 00:00:00 2001 From: H.G. Muller Date: Wed, 8 Jan 2014 16:48:08 +0100 Subject: [PATCH 09/16] Adapt rank counting to new XBoard standard Since XBoard 4.8 (the first version that supports Chu Shogi) rank counting starts from 0 only for boards exactly 10 ranks deep. So Chu, Dai etc. all have to start counting at 1. --- hachu.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/hachu.c b/hachu.c index b3cd8c9..778182b 100644 --- a/hachu.c +++ b/hachu.c @@ -71,7 +71,7 @@ #define BSIZE BWMAX*BHMAX #define ZONE zone -#define ONE (currentVariant == V_SHO || currentVariant == V_CHESS || currentVariant == V_SHATRANJ || currentVariant == V_MAKRUK || currentVariant == V_LION) +#define ONE 1 /* currently no variants with 10-deep board */ #define BLACK 0 #define WHITE 1 -- 1.7.0.4 From 3460d0ca7ea329ce5b9db05024e79dd18a942cd3 Mon Sep 17 00:00:00 2001 From: H.G. Muller Date: Sat, 11 Jan 2014 15:34:36 +0100 Subject: [PATCH 10/16] Fix undo, remove commands The Init() done in the framework of takebacks did refer to the variant by V_number, rather than by table index. A V_number as now been added to signify 'same variant'. --- hachu.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/hachu.c b/hachu.c index 778182b..f5fd5d2 100644 --- a/hachu.c +++ b/hachu.c @@ -432,7 +432,7 @@ typedef struct { char *array; // initial position } VariantDesc; -typedef enum { V_CHESS, V_SHO, V_CHU, V_DAI, V_DADA, V_MAKA, V_TAI, V_KYOKU, V_TENJIKU, V_SHATRANJ, V_MAKRUK, V_LION } Variant; +typedef enum { V_SAME, V_CHESS, V_SHO, V_CHU, V_DAI, V_DADA, V_MAKA, V_TAI, V_KYOKU, V_TENJIKU, V_SHATRANJ, V_MAKRUK, V_LION } Variant; VariantDesc variants[] = { { 16, 8, 8, 1, V_CHESS, "normal", chessArray }, // FIDE @@ -890,11 +890,13 @@ Init (int var) int i, j, k; PieceDesc *pawn; + if(var != V_SAME) { // the following should be already set if we stay in same variant (for TakeBack) currentVariant = variants[var].varNr; bWidth = variants[var].boardWidth; bHeight = variants[var].boardRanks; zone = variants[var].zoneDepth; array = variants[var].array; + } bsize = bWidth*bHeight; chuFlag = (currentVariant == V_CHU || currentVariant == V_LION); tenFlag = (currentVariant == V_TENJIKU); @@ -2485,7 +2487,7 @@ printf("# ponder=%s\n", MoveToText(pv[1],0)); { // reset the game and then replay it to the desired point int last, stm; last = moveNr - n; if(last < 0) last = 0; - Init(currentVariant); stm = Setup2(startPos); + Init(V_SAME); stm = Setup2(startPos); printf("# setup done");fflush(stdout); for(moveNr=0; moveNr Date: Tue, 18 Feb 2014 19:38:23 +0100 Subject: [PATCH 11/16] Fix Mighty Lion other x Lion captures Because the 'chess' flag is set in Mighty Lion, it uses promoSuppress to generate e.p. captures. But the Iron-Lion flag hidden in promoSuppress can also be set there, and would lead to a wildly off-board access during this e.p. generation. --- hachu.c | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/hachu.c b/hachu.c index f5fd5d2..1bfa35a 100644 --- a/hachu.c +++ b/hachu.c @@ -1696,7 +1696,7 @@ void TerminationCheck(); int Search (int alpha, int beta, int difEval, int depth, int lmr, int oldPromo, int promoSuppress, int threshold) { - int i, j, k, phase, king, nextVictim, to, defer, autoFail=0, inCheck = 0, late=100000; + int i, j, k, phase, king, nextVictim, to, defer, autoFail=0, inCheck = 0, late=100000, ep; int firstMove, oldMSP = msp, curMove, sorted, bad, dubious, bestMoveNr; int resDep, iterDep, ext; int myPV = pvPtr; @@ -1852,11 +1852,11 @@ if(PATH) printf("# autofail end (%d-%d)\n", firstMove, msp); autoFail = 0; curMove = firstMove - 1; continue; // release stashed moves for search } phase = 4; // out of victims: all captures generated - if(chessFlag && promoSuppress != ABSENT) { // e.p. rights. Create e.p. captures as Lion moves - int n = board[promoSuppress-1], old = msp; // a-side neighbor of pushed pawn - if( n != EMPTY && (n&TYPE) == stm && p[n].value == pVal ) NewCapture(promoSuppress-1, SPECIAL + 20 - 4*stm, 0); - n = board[promoSuppress+1]; // h-side neighbor of pushed pawn - if( n != EMPTY && (n&TYPE) == stm && p[n].value == pVal ) NewCapture(promoSuppress+1, SPECIAL + 52 - 4*stm, 0); + if(chessFlag && (ep = promoSuppress & SQUARE) != ABSENT) { // e.p. rights. Create e.p. captures as Lion moves + int n = board[ep-1], old = msp; // a-side neighbor of pushed pawn + if( n != EMPTY && (n&TYPE) == stm && p[n].value == pVal ) NewCapture(ep-1, SPECIAL + 20 - 4*stm, 0); + n = board[ep+1]; // h-side neighbor of pushed pawn + if( n != EMPTY && (n&TYPE) == stm && p[n].value == pVal ) NewCapture(ep+1, SPECIAL + 52 - 4*stm, 0); if(msp != old) goto extractMove; // one or more e.p. capture were generated } case 4: // dubious captures -- 1.7.0.4 From 7f4e90428b8f436483fe19d86d81b4acc67929ef Mon Sep 17 00:00:00 2001 From: H.G. Muller Date: Fri, 28 Feb 2014 09:40:51 +0100 Subject: [PATCH 12/16] Fix variant choice Init() must be passed the variant number, not a variant ID, so setting the variant to Chess (which has number 0 in the variants table) got confused with V_SAME for staying in the same variant, and thus did not work. The invalid variant number -1 is now used to stay in the current variant. --- hachu.c | 8 +++++--- 1 files changed, 5 insertions(+), 3 deletions(-) diff --git a/hachu.c b/hachu.c index 1bfa35a..84f7249 100644 --- a/hachu.c +++ b/hachu.c @@ -432,7 +432,9 @@ typedef struct { char *array; // initial position } VariantDesc; -typedef enum { V_SAME, V_CHESS, V_SHO, V_CHU, V_DAI, V_DADA, V_MAKA, V_TAI, V_KYOKU, V_TENJIKU, V_SHATRANJ, V_MAKRUK, V_LION } Variant; +typedef enum { V_CHESS, V_SHO, V_CHU, V_DAI, V_DADA, V_MAKA, V_TAI, V_KYOKU, V_TENJIKU, V_SHATRANJ, V_MAKRUK, V_LION } Variant; + +#define SAME (-1) VariantDesc variants[] = { { 16, 8, 8, 1, V_CHESS, "normal", chessArray }, // FIDE @@ -890,7 +892,7 @@ Init (int var) int i, j, k; PieceDesc *pawn; - if(var != V_SAME) { // the following should be already set if we stay in same variant (for TakeBack) + if(var != SAME) { // the following should be already set if we stay in same variant (for TakeBack) currentVariant = variants[var].varNr; bWidth = variants[var].boardWidth; bHeight = variants[var].boardRanks; @@ -2487,7 +2489,7 @@ printf("# ponder=%s\n", MoveToText(pv[1],0)); { // reset the game and then replay it to the desired point int last, stm; last = moveNr - n; if(last < 0) last = 0; - Init(V_SAME); stm = Setup2(startPos); + Init(SAME); stm = Setup2(startPos); printf("# setup done");fflush(stdout); for(moveNr=0; moveNr Date: Fri, 28 Feb 2014 10:11:05 +0100 Subject: [PATCH 13/16] Replace variant normal by nocastle Since castling is not implemented (yet?), HaChu really plays only nocastle rather than normal Chess. The order of variants is now changed to put chu first, to make use of XBoard auto-selection of variant. --- hachu.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/hachu.c b/hachu.c index 84f7249..f457569 100644 --- a/hachu.c +++ b/hachu.c @@ -437,10 +437,10 @@ typedef enum { V_CHESS, V_SHO, V_CHU, V_DAI, V_DADA, V_MAKA, V_TAI, V_KYOKU, V_T #define SAME (-1) VariantDesc variants[] = { - { 16, 8, 8, 1, V_CHESS, "normal", chessArray }, // FIDE + { 24, 12, 12, 4, V_CHU, "chu", chuArray }, // Chu + { 16, 8, 8, 1, V_CHESS, "nocastle", chessArray }, // FIDE { 18, 9, 9, 3, V_SHO, "9x9+0_shogi", shoArray }, // Sho { 18, 9, 9, 3, V_SHO, "sho", shoArray }, // Sho duplicat - { 24, 12, 12, 4, V_CHU, "chu", chuArray }, // Chu { 30, 15, 15, 5, V_DAI, "dai", daiArray }, // Dai { 32, 16, 16, 5, V_TENJIKU, "tenjiku", tenArray }, // Tenjiku { 16, 8, 8, 1, V_SHATRANJ,"shatranj",shatArray}, // Shatranj -- 1.7.0.4 From 249a20cb9dd6f29fa5450deafbb44dfabf723f90 Mon Sep 17 00:00:00 2001 From: H.G. Muller Date: Fri, 28 Feb 2014 10:43:08 +0100 Subject: [PATCH 14/16] Fix Pawn double-push Black pawns also did double-pushes from the 6th rank! --- hachu.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/hachu.c b/hachu.c index f457569..d341352 100644 --- a/hachu.c +++ b/hachu.c @@ -1122,7 +1122,7 @@ GenNonCapts (int promoSuppress) } } else if(r == M) { // FIDE Pawn; check double-move - if(!NewNonCapture(x, x+v, pFlag) && chessFlag && promoBoard[x-v]) + if(!NewNonCapture(x, x+v, pFlag) && chessFlag && promoBoard[x-v] & LAST_RANK) NewNonCapture(x, x+2*v, pFlag), moveStack[msp-1] |= DEFER; // use promoSuppress flag as e.p. flag } continue; -- 1.7.0.4 From 48da8ef50df6c4bfa493f1b3ee0d6cc19cee5051 Mon Sep 17 00:00:00 2001 From: H.G. Muller Date: Fri, 28 Feb 2014 11:43:13 +0100 Subject: [PATCH 15/16] Add primitive Makefile This makefile is adapted from that of Fairy-Max. It uses XBoard's --show-config option to install the SVG graphics amongst the XBoard data files. --- Makefile | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 52 insertions(+), 0 deletions(-) create mode 100644 Makefile diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..b76476d --- /dev/null +++ b/Makefile @@ -0,0 +1,52 @@ +srcdir = . + +CC?=gcc +CFLAGS?= -O2 -s + + +ALL= hachu hachu.6.gz + +all: ${ALL} + +hachu: hachu.c + $(CC) $(CFLAGS) hachu.c -o hachu + +install: ${ALL} ${srcdir}/svg/* + cp -u ${srcdir}/hachu $(DESTDIR)/usr/games + install -d -m0755 $(DESTDIR)/usr/share/man/man6 + cp -u ${srcdir}/hachu.6.gz $(DESTDIR)/usr/share/man/man6 + install -d -m0755 `xboard --show-config Datadir`/themes/chu + cp -u ${srcdir}/svg/*.svg `xboard --show-config Datadir`/themes/chu + install -d -m0755 `xboard --show-config Datadir`/themes/conf + cp -u ${srcdir}/svg/sho ${srcdir}/svg/chu `xboard --show-config Datadir`/themes/conf + +hachu.6.gz: hachu.pod + pod2man -s 6 hachu.pod > hachu.man + cp hachu.man hachu.6 + rm -f hachu.6.gz + gzip hachu.6 + +clean: + rm -f ${ALL} + +dist-clean: + rm -f ${ALL} *~ chu/*~ *.man md5sums + +dist: + install -d -m0755 HaChu + install -d -m0755 HaChu/svg + rm -f hachu.tar hachu.tar.gz + cp hachu.c hachu.pod Makefile HaChu + cp chu/* HaChu/svg + (md5sum HaChu/* HaChu/svg/* > HaChu/md5sums) || true + tar -cvvf hachu.tar HaChu + gzip hachu.tar + rm HaChu/svg/* + rmdir HaChu/svg + rm HaChu/* + rmdir HaChu + +uninstall: + rm -f $(DESTDIR)/usr/share/man/man6/hachu.6.gz + rm -f $(DESTDIR)/usr/games/hachu + -- 1.7.0.4 From aa576650ea406a2b26134ac64a699e3237a02444 Mon Sep 17 00:00:00 2001 From: H.G. Muller Date: Fri, 28 Feb 2014 10:47:20 +0100 Subject: [PATCH 16/16] Bump version to 0.18 --- hachu.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/hachu.c b/hachu.c index d341352..b39efbf 100644 --- a/hachu.c +++ b/hachu.c @@ -10,7 +10,7 @@ // promotions by pieces with Lion power stepping in & out the zone in same turn // promotion on capture -#define VERSION "0.17" +#define VERSION "0.18" //define PATH level==0 /*|| path[0] == 0x3490a && (level==1 || path[1] == 0x285b3 && (level == 2 || path[2] == 0x8710f && (level == 3 /*|| path[3] == 0x3e865 && (level == 4 || path[4] == 0x4b865 && (level == 5)))))*/ #define PATH 0 -- 1.7.0.4