5 !define FILES "..\..\"
\r
6 !define ROOT "${FILES}Chess\"
\r
7 !define FNTDIR "${FILES}Chess\RePackage\"
\r
9 ; grab the FontName plugin from NSIS for these
\r
10 !include FontRegAdv.nsh
\r
11 !include FontName.nsh
\r
13 ;--------------------------------
\r
17 ;--------------------------------
\r
19 !define InstName "WinBoard"
\r
20 !define InstVersion "4.4.0beta2"
\r
21 !define InstBaseDir "WinBoard-4.4.0"
\r
23 ;--------------------------------
\r
27 Name "${InstName} ${InstVersion}"
\r
28 Caption "WinBoard - Chessboard For Windows"
\r
29 OutFile "WinBoard-4.4.0beta2.exe"
\r
30 InstallDir $PROGRAMFILES\${InstBaseDir}
\r
34 SetDatablockOptimize on
\r
36 SilentInstall normal
\r
37 ;BGGradient 000000 4682b4 FFFFFF
\r
40 ;--------------------------------
\r
44 Var START_MENU_FOLDER
\r
47 ;--------------------------------
\r
50 ;!define MUI_ICON "knight.ico"
\r
51 ;!define MUI_UNICON "wc_uninst.ico"
\r
52 !define MUI_WELCOMEFINISHPAGE_BITMAP "welcome_chess.bmp"
\r
54 ;--------------------------------
\r
57 !define MUI_ABORTWARNING
\r
58 ;!define MUI_COMPONENTSPAGE_NODESC
\r
59 !define MUI_COMPONENTSPAGE_SMALLDESC
\r
60 !define MUI_WELCOMEPAGE_TEXT "This wizard will guide you through the installation of ${InstName} ${InstVersion}.\n\n\n\n\nClick Next to continue."
\r
61 !define MUI_LICENSEPAGE_TEXT_BOTTOM "$\nPress Continue to proceed with the installation."
\r
62 !define MUI_LICENSEPAGE_BUTTON "Continue"
\r
64 ;--------------------------------
\r
66 ;--------------------------------
\r
70 ;--------------------------------------------------------------------
\r
71 !insertmacro MUI_PAGE_WELCOME
\r
72 !insertmacro MUI_PAGE_LICENSE "${ROOT}WinBoard\doc\COPYRIGHTS.txt"
\r
73 !insertmacro MUI_PAGE_COMPONENTS
\r
74 Page custom FileAssoc
\r
75 !insertmacro MUI_PAGE_DIRECTORY
\r
77 ;Start Menu Folder Page Configuration
\r
78 !define MUI_STARTMENUPAGE_REGISTRY_ROOT "HKCU"
\r
79 !define MUI_STARTMENUPAGE_REGISTRY_KEY "Software\WinBoard"
\r
80 !define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "Start Menu Folder"
\r
81 !insertmacro MUI_PAGE_STARTMENU Application $START_MENU_FOLDER
\r
83 !insertmacro MUI_PAGE_INSTFILES
\r
84 !insertmacro MUI_PAGE_FINISH
\r
85 ;--------------------------------------------------------------------
\r
89 ;!define MUI_WELCOMEPAGE_TEXT "WARNING! THIS UNINSTALLER WILL COMPLETELY DELETE THE INSTALLATION DIRECTORY\n\n$INSTDIR !!!\n\nIF THERE ARE ANY FILES YOU WISH TO SAVE, MOVE THEM FROM THE INSTALLATION DIRECTORY FIRST!\n\n\n\nPress Next to Continue."
\r
90 !define MUI_WELCOMEPAGE_TEXT "This will uninstall WinBoard from directory:\n\n$INSTDIR\n\n\n\nPress Next to Continue."
\r
91 !insertmacro MUI_UNPAGE_WELCOME
\r
92 !insertmacro MUI_UNPAGE_CONFIRM
\r
93 !insertmacro MUI_UNPAGE_INSTFILES
\r
94 !insertmacro MUI_UNPAGE_FINISH
\r
96 ;--------------------------------
\r
99 !insertmacro MUI_LANGUAGE "English"
\r
101 ;--------------------------------
\r
103 ;--------------------------------
\r
106 ;These files should be inserted before other files in the data block
\r
107 ;Keep these lines before any File command
\r
108 ;Only for solid compression (by default, solid compression is enabled for BZIP2 and LZMA)
\r
110 ReserveFile "FA.ini"
\r
111 !insertmacro MUI_RESERVEFILE_INSTALLOPTIONS
\r
113 ;--------------------------------
\r
115 Section "WinBoard Core Components" Core
\r
120 SetOutPath "$INSTDIR\WinBoard\doc"
\r
121 File "${ROOT}WinBoard\doc\fonts.html"
\r
122 File "${ROOT}WinBoard\doc\manual.html"
\r
123 File "${ROOT}WinBoard\doc\UCIconfig.html"
\r
124 File "${ROOT}WinBoard\doc\shortcuts.html"
\r
125 File "${ROOT}WinBoard\doc\texture.html"
\r
126 File "${ROOT}WinBoard\doc\engine-intf.html"
\r
127 File "${ROOT}WinBoard\doc\FAQ.html"
\r
128 File "${ROOT}WinBoard\doc\mini.gif"
\r
129 File "${ROOT}WinBoard\doc\PG2fruit.png"
\r
130 File "${ROOT}WinBoard\doc\zippy.README"
\r
131 File "${ROOT}WinBoard\doc\README.html"
\r
132 File "${ROOT}WinBoard\doc\COPYRIGHTS.txt"
\r
133 File "${ROOT}WinBoard\doc\COPYRIGHT.txt"
\r
134 File "${ROOT}WinBoard\doc\COPYING.txt"
\r
136 ; logo bitmaps for ICS and users
\r
137 SetOutPath "$INSTDIR\WinBoard\logos"
\r
138 File "${ROOT}WinBoard\logos\chessclub.com.bmp"
\r
139 File "${ROOT}WinBoard\logos\freechess.org.bmp"
\r
140 File "${ROOT}WinBoard\logos\administrator.bmp"
\r
141 File "${ROOT}WinBoard\logos\user.bmp"
\r
142 File "${ROOT}WinBoard\logos\guest.bmp"
\r
143 File "${ROOT}WinBoard\logos\README.txt"
\r
145 ; Polyglot ini files; fruit.ini always supplied (even if Fruit not installed) as example
\r
146 SetOutPath "$INSTDIR\WinBoard\PG"
\r
147 File "${ROOT}WinBoard\PG\fruit.ini"
\r
149 ; bitmaps for board squares; xqboard is an entire (even-colored) board grid
\r
150 SetOutPath "$INSTDIR\Winboard\textures"
\r
151 File "${ROOT}WinBoard\textures\marble_d.bmp"
\r
152 File "${ROOT}WinBoard\textures\marble_l.bmp"
\r
153 File "${ROOT}WinBoard\textures\wood_d.bmp"
\r
154 File "${ROOT}WinBoard\textures\wood_l.bmp"
\r
155 File "${ROOT}WinBoard\textures\xqboard.bmp"
\r
157 StrCpy $FONT_DIR $FONTS
\r
158 !insertmacro InstallTTF '${FNTDIR}MARKFONT.TTF'
\r
159 SendMessage ${HWND_BROADCAST} ${WM_FONTCHANGE} 0 0 /TIMEOUT=5000
\r
161 ; the small ini files contain the command-line options used by the shortcuts
\r
162 SetOutPath "$INSTDIR\Winboard"
\r
163 File "${ROOT}Winboard\winboard.ini"
\r
164 File "${ROOT}Winboard\wood.ini"
\r
165 File "${ROOT}Winboard\marble.ini"
\r
166 File "${ROOT}WinBoard\ChessMark.ini"
\r
167 File "${ROOT}Winboard\fairy.ini"
\r
168 File "${ROOT}Winboard\FICS.ini"
\r
169 File "${ROOT}Winboard\fruit.ini"
\r
170 File "${ROOT}Winboard\Gothic.ini"
\r
171 File "${ROOT}Winboard\ICC.ini"
\r
172 File "${ROOT}Winboard\ICSbot.ini"
\r
173 File "${ROOT}Winboard\viewer.ini"
\r
174 File "${ROOT}Winboard\winboard.exe"
\r
175 File "${ROOT}Winboard\polyglot.exe"
\r
176 File "${ROOT}Winboard\timeseal.exe"
\r
177 File "${ROOT}Winboard\timestamp.exe"
\r
178 File "${ROOT}Winboard\winboard.chm"
\r
179 File "${ROOT}Winboard\winboard.hlp"
\r
180 File "${ROOT}Winboard\default_book.bin"
\r
182 ;Create uninstaller
\r
183 WriteUninstaller "$INSTDIR\UnInstall.exe"
\r
185 ; create some shortcuts in the WinBoard folder
\r
186 CreateShortCut "$INSTDIR\WinBoard\PGN Viewer.lnk" "$INSTDIR\WinBoard\winboard.exe" "@viewer" "$INSTDIR\WinBoard\winboard.exe" 0
\r
187 CreateShortCut "$INSTDIR\WinBoard\ICC.lnk" "$INSTDIR\WinBoard\winboard.exe" "@ICC" "$INSTDIR\WinBoard\winboard.exe" 0
\r
188 CreateShortCut "$INSTDIR\WinBoard\FICS.lnk" "$INSTDIR\WinBoard\winboard.exe" "@FICS" "$INSTDIR\WinBoard\winboard.exe" 0
\r
189 CreateShortCut "$INSTDIR\WinBoard\Fairy-Max ICS bot.lnk" "$INSTDIR\WinBoard\winboard.exe" "@ICSbot" "$INSTDIR\WinBoard\winboard.exe" 0
\r
190 CreateShortCut "$INSTDIR\WinBoard\my WinBoard.lnk" "$INSTDIR\WinBoard\winboard.exe" "@marble @ChessMark" "$INSTDIR\WinBoard\winboard.exe" 0
\r
191 CreateShortCut "$INSTDIR\WinBoard\Fruit.lnk" "$INSTDIR\WinBoard\winboard.exe" "@fruit" "$INSTDIR\WinBoard\winboard.exe" 0
\r
192 CreateShortCut "$INSTDIR\WinBoard\Fairy-Max.lnk" "$INSTDIR\WinBoard\winboard.exe" "@fairy" "$INSTDIR\WinBoard\winboard.exe" 0
\r
194 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
195 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER"
\r
196 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Game Viewer.lnk" "$INSTDIR\WinBoard\winboard.exe" "@viewer" "$INSTDIR\WinBoard\winboard.exe" 1
\r
197 ;CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\WinBoard Help.lnk" "$INSTDIR\WinBoard\winboard.hlp"
\r
198 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Frequently Asked Questions.lnk" "$INSTDIR\WinBoard\doc\FAQ.html"
\r
199 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\WinBoard Gold Pack README.lnk" "$INSTDIR\WinBoard\doc\README.html"
\r
200 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\WinBoard UnInstall.lnk" "$INSTDIR\UnInstall.exe"
\r
201 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\WinBoard Files.lnk" "$INSTDIR\WinBoard"
\r
202 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Chess Server - chessclub.com.lnk" "$INSTDIR\WinBoard\winboard.exe" "@ICC" "$INSTDIR\WinBoard\winboard.exe" 0
\r
203 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Chess Server - freechess.org.lnk" "$INSTDIR\WinBoard\winboard.exe" "@FICS" "$INSTDIR\WinBoard\winboard.exe" 0
\r
204 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Fancy-Look WinBoard.lnk" "$INSTDIR\WinBoard\winboard.exe" "@marble @ChessMark" "$INSTDIR\WinBoard\winboard.exe" 2
\r
205 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\WinBoard Startup Dialog.lnk" "$INSTDIR\WinBoard\winboard.exe" "" "$INSTDIR\WinBoard\winboard.exe" 2
\r
206 !insertmacro MUI_STARTMENU_WRITE_END
\r
210 SectionGroup /e "Auxiliary Components and Engines" Profiles
\r
212 Section "Fairy-Max Demo Engine" fmax
\r
214 ; Fairy-Max is so small it can always be included, to have at least one working engine
\r
215 SetOutPath "$INSTDIR\Fairy-Max"
\r
216 File "${ROOT}Fairy-Max\fmax.exe"
\r
217 File "${ROOT}Fairy-Max\MaxQi.exe"
\r
218 File "${ROOT}Fairy-Max\fmax.ini"
\r
219 File "${ROOT}Fairy-Max\qmax.ini"
\r
220 File "${ROOT}Fairy-Max\logo.bmp"
\r
222 ; also create a menu item to play Xiangqi with MaxQi. It is put with the Chess Engines becase it uses western-style board
\r
223 SetOutPath $INSTDIR\WinBoard
\r
224 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines"
\r
225 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
226 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines\Fairy-Max.lnk" "$INSTDIR\WinBoard\winboard.exe" "@fairy" "$INSTDIR\Fairy-Max\fmax.exe" 0
\r
227 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines\MaxQi (XQ).lnk" "$INSTDIR\WinBoard\winboard.exe" "@fairy -fcp MaxQi -scp MaxQi -variant xiangqi" "$INSTDIR\Fairy-Max\MaxQi.exe" 0
\r
228 !insertmacro MUI_STARTMENU_WRITE_END
\r
231 Section "Fruit 2.1" Fruit
\r
232 ; we include no separate book for Fruit, as it can use the GUI book. It is mostly included to provide a UCI example
\r
233 SetOutPath "$INSTDIR\Fruit"
\r
234 File "${ROOT}Fruit\copying.txt"
\r
235 File "${ROOT}Fruit\fruit_21.exe"
\r
236 File "${ROOT}Fruit\logo.bmp"
\r
237 File "${ROOT}Fruit\readme.txt"
\r
238 File "${ROOT}Fruit\technical_10.txt"
\r
240 SetOutPath $INSTDIR\WinBoard
\r
241 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines"
\r
242 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
243 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines\Fruit 2.1.lnk" "$INSTDIR\WinBoard\winboard.exe" "@fruit" "$INSTDIR\WinBoard\winboard.exe" 2
\r
244 !insertmacro MUI_STARTMENU_WRITE_END
\r
247 Section "Tournament Manager" Tournaments
\r
248 SetOutPath "$INSTDIR\PSWBTM\doc"
\r
249 File "${ROOT}PSWBTM\doc\configure.html"
\r
250 File "${ROOT}PSWBTM\doc\install.html"
\r
251 File "${ROOT}PSWBTM\doc\running.html"
\r
252 File "${ROOT}PSWBTM\doc\tourney.html"
\r
253 File "${ROOT}PSWBTM\doc\menu.png"
\r
254 File "${ROOT}PSWBTM\doc\conf.png"
\r
255 File "${ROOT}PSWBTM\doc\eman.png"
\r
256 File "${ROOT}PSWBTM\doc\pswbtm.png"
\r
257 File "${ROOT}PSWBTM\doc\tour.png"
\r
259 CreateDirectory "$INSTDIR\PSWBTM\games"
\r
261 SetOutPath "$INSTDIR\PSWBTM\start positions"
\r
262 File "${ROOT}PSWBTM\start positions\nunn.pgn"
\r
263 File "${ROOT}PSWBTM\start positions\silver.epd"
\r
265 SetOutPath "$INSTDIR\PSWBTM"
\r
266 File "${ROOT}PSWBTM\config.pswbtm"
\r
267 File "${ROOT}PSWBTM\engines.pswbtm"
\r
268 File "${ROOT}PSWBTM\ntls.pswbtm"
\r
269 File "${ROOT}PSWBTM\PSWBTM.exe"
\r
270 File "${ROOT}PSWBTM\README.txt"
\r
273 SubSection "Xiangqi" Xiangqi
\r
275 Section "Graphics (required!)" XQgraphics
\r
276 ; the large bitmap of the wooden XQ board is optional, as is the XQ opening book
\r
277 SetOutPath "$INSTDIR\WinBoard\textures"
\r
278 File "${ROOT}WinBoard\textures\xqwood.bmp"
\r
280 StrCpy $FONT_DIR $FONTS
\r
281 !insertmacro InstallTTF '${FNTDIR}XIANGQI.TTF'
\r
282 SendMessage ${HWND_BROADCAST} ${WM_FONTCHANGE} 0 0 /TIMEOUT=5000
\r
284 SetOutPath "$INSTDIR\WinBoard"
\r
285 File "${ROOT}Winboard\xq.ini"
\r
286 File "${ROOT}Winboard\xq_book.bin"
\r
287 File "${ROOT}Winboard\UCCI2WB.exe"
\r
288 File "${ROOT}Winboard\QH2WB.exe"
\r
290 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER\Xiangqi Engines"
\r
291 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
292 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\WinBoard\Xiangqi.lnk" "$INSTDIR\WinBoard\winboard.exe" "@xq" "$INSTDIR\WinBoard\UCCI2WB.exe" 0
\r
293 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Xiangqi Engines\MaxQi.lnk" "$INSTDIR\WinBoard\winboard.exe" "@fairy @xq -fcp MaxQi -scp MaxQi" "$INSTDIR\Fairy-Max\MaxQi.exe" 0
\r
294 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\WinBoard XQ Startup (oriental).lnk" "$INSTDIR\WinBoard\winboard.exe" "@xq" "$INSTDIR\WinBoard\winboard.exe" 2
\r
295 !insertmacro MUI_STARTMENU_WRITE_END
\r
298 Section "HaQiKi D XQ-Engine" HaQi
\r
299 SetOutPath "$INSTDIR\HaQi"
\r
300 File "${ROOT}HaQi\haqikid.exe"
\r
301 File "${ROOT}HaQi\logo.bmp"
\r
302 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER\Xiangqi Engines"
\r
304 SetOutPath $INSTDIR\WinBoard
\r
305 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER\Xiangqi Engines"
\r
306 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
307 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Xiangqi Engines\HaQiKi D.lnk" "$INSTDIR\WinBoard\winboard.exe" "@fairy @xq -fcp haqikid -fd ..\HaQi -scp haqikid -sd ..\HaQi" "$INSTDIR\HaQi\haqikid.exe" 0
\r
308 !insertmacro MUI_STARTMENU_WRITE_END
\r
311 Section "Elephant Eye XQ-Engine" EleEye
\r
312 SetOutPath "$INSTDIR\EleEye"
\r
313 File "${ROOT}EleEye\ATOM.DLL"
\r
314 File "${ROOT}EleEye\BOOK.DAT"
\r
315 File "${ROOT}EleEye\CCHESS.DLL"
\r
316 File "${ROOT}EleEye\ELEEYE.EXE"
\r
317 File "${ROOT}EleEye\EVALUATE.DLL"
\r
318 File "${ROOT}EleEye\logo.bmp"
\r
320 SetOutPath "$INSTDIR\WinBoard\QH"
\r
321 File "${ROOT}WinBoard\QH\eleeye.ini"
\r
323 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER\Xiangqi Engines"
\r
324 SetOutPath $INSTDIR\WinBoard
\r
325 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
326 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Xiangqi Engines\Elephant Eye.lnk" "$INSTDIR\WinBoard\winboard.exe" '@xq -cp -fcp "UCCI2WB QH\eleeye.ini" -firstLogo ..\EleEye\logo.bmp -scp "UCCI2WB QH\eleeye.ini -secondLogo ..\EleEye\logo.bmp"' "$INSTDIR\EleEye\ELEEYE.exe" 0
\r
327 !insertmacro MUI_STARTMENU_WRITE_END
\r
333 SubSection "Chess Variants" Variants
\r
335 Section "Pulsar Variant Engine (Mike Adams)" Pulsar
\r
336 SetOutPath "$INSTDIR\Pulsar"
\r
337 File "${ROOT}Pulsar\pulsar2009-9b.exe"
\r
338 File "${ROOT}Pulsar\bigbook.txt"
\r
339 File "${ROOT}Pulsar\openbk.txt"
\r
340 File "${ROOT}Pulsar\atomicBookBlack.txt"
\r
341 File "${ROOT}Pulsar\atomicBookWhite.txt"
\r
342 File "${ROOT}Pulsar\kingsBookBlack.txt"
\r
343 File "${ROOT}Pulsar\kingsBookWhite.txt"
\r
344 File "${ROOT}Pulsar\losersBlack.txt"
\r
345 File "${ROOT}Pulsar\losersWhite.txt"
\r
346 File "${ROOT}Pulsar\pulsarCrazyBlack.txt"
\r
347 File "${ROOT}Pulsar\pulsarCrazyWhite.txt"
\r
348 File "${ROOT}Pulsar\pulsarShatranjBlack.txt"
\r
349 File "${ROOT}Pulsar\pulsarShatranjWhite.txt"
\r
350 File "${ROOT}Pulsar\suicideBookBlack.txt"
\r
351 File "${ROOT}Pulsar\suicideBookWhite.txt"
\r
352 File "${ROOT}Pulsar\threeBookBlack.txt"
\r
353 File "${ROOT}Pulsar\threeBookWhite.txt"
\r
354 File "${ROOT}Pulsar\logo.bmp"
\r
356 SetOutPath $INSTDIR\WinBoard
\r
357 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines"
\r
358 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
359 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines\Pulsar.lnk" "$INSTDIR\WinBoard\winboard.exe" '@fairy -fcp "pulsar2009-9b 2" -fd ..\Pulsar -scp "pulsar2009-9b 2" -sd ..\Pulsar -usePolyglotBook false -variant atomic' "$INSTDIR\WinBoard\winboard.exe" 2
\r
360 !insertmacro MUI_STARTMENU_WRITE_END
\r
363 Section "Joker80 Variant Engine" Joker
\r
364 SetOutPath "$INSTDIR\Joker"
\r
365 File "${ROOT}Joker\joker80.exe"
\r
366 File "${ROOT}Joker\jokerKM.exe"
\r
367 File "${ROOT}Joker\logo.bmp"
\r
369 SetOutPath $INSTDIR\WinBoard
\r
370 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines"
\r
371 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
372 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines\Joker80 (Gothic).lnk" "$INSTDIR\WinBoard\winboard.exe" "@fairy -fcp Joker80.exe -fd ..\Joker -variant gothic" "$INSTDIR\Joker\Joker80.exe" 0
\r
373 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines\Joker Knightmate.lnk" "$INSTDIR\WinBoard\winboard.exe" "@fairy -fcp JokerKM.exe -fd ..\Joker -variant knightmate" "$INSTDIR\Joker\JokerKM.exe" 0
\r
374 !insertmacro MUI_STARTMENU_WRITE_END
\r
377 Section "Adapter for SMIRF Engine" Smirf
\r
378 SetOutPath $INSTDIR\SMIRF
\r
379 File "${ROOT}SMIRF\Smirfoglot.exe"
\r
380 File "${ROOT}SMIRF\logo.bmp"
\r
382 SetOutPath $INSTDIR\WinBoard
\r
383 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines"
\r
384 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
385 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines\SMIRF.lnk" "$INSTDIR\WinBoard\winboard.exe" "@fairy -fcp Smirfoglot.exe -fd ..\SMIRF" "$INSTDIR\SMIRF\Smirfoglot.exe" 0
\r
386 !insertmacro MUI_STARTMENU_WRITE_END
\r
389 Section "ShaMax Shatranj Engine" ShaMax
\r
390 SetOutPath $INSTDIR\Fairy-Max
\r
391 File ${ROOT}Fairy-Max\ShaMax.exe
\r
393 SetOutPath $INSTDIR\WinBoard
\r
394 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
395 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines\ShaMax.lnk" "$INSTDIR\WinBoard\winboard.exe" "@fairy -fcp ShaMax.exe -variant shatranj" "$INSTDIR\Fairy-Max\ShaMax.exe" 0
\r
396 !insertmacro MUI_STARTMENU_WRITE_END
\r
402 ;Section "un.Fonts"
\r
403 ; StrCpy $FONT_DIR $FONTS
\r
404 ; !insertmacro RemoveTTF 'MARKFONT.TTF'
\r
405 ; !insertmacro RemoveTTF 'XIANGI.TTF'
\r
406 ; SendMessage ${HWND_BROADCAST} ${WM_FONTCHANGE} 0 0 /TIMEOUT=5000
\r
409 ;--------------------------------
\r
410 ;Installer Functions
\r
413 ;Extract InstallOptions INI files
\r
414 !insertmacro MUI_INSTALLOPTIONS_EXTRACT "FA.ini"
\r
420 !insertmacro MUI_HEADER_TEXT "Windows File Associations" "Do you want to use Winboard as your viewer for the following file types?"
\r
421 !insertmacro MUI_INSTALLOPTIONS_DISPLAY "FA.ini"
\r
424 ;Read a value from an InstallOptions INI file
\r
426 !insertmacro MUI_INSTALLOPTIONS_READ $INI_VALUE "FA.ini" "Field 2" "State"
\r
428 ;Display a messagebox if check box was checked
\r
429 StrCmp $INI_VALUE "1" "" CheckFEN
\r
430 WriteRegStr HKCR ".pgn" "" "WinBoard.PGN"
\r
431 WriteRegStr HKCR ".pgn" "Content Type" "application/x-chess-pgn"
\r
432 WriteRegStr HKCR "WinBoard.PGN" "" "Chess Game"
\r
433 WriteRegStr HKCR "WinBoard.PGN\DefaultIcon" "" "$INSTDIR\WinBoard\WinBoard.exe,1"
\r
434 WriteRegStr HKCR "WinBoard.PGN\Shell\Open" "" "Open"
\r
435 WriteRegStr HKCR "WinBoard.PGN\Shell\Open\command" "" '"$INSTDIR\WinBoard\WinBoard.exe" -ini "$INSTDIR\WinBoard\WinBoard.ini" @viewer -lgf "%1"'
\r
438 !insertmacro MUI_INSTALLOPTIONS_READ $INI_VALUE "FA.ini" "Field 3" "State"
\r
440 ;Display a messagebox if check box was checked
\r
441 StrCmp $INI_VALUE "1" "" Continue
\r
442 WriteRegStr HKCR ".fen" "" "WinBoard.FEN"
\r
443 WriteRegStr HKCR ".fen" "Content Type" "application/x-chess-fen"
\r
444 WriteRegStr HKCR "WinBoard.FEN" "" "Chess Position"
\r
445 WriteRegStr HKCR "WinBoard.FEN\DefaultIcon" "" "$INSTDIR\WinBoard\WinBoard.exe,1"
\r
446 WriteRegStr HKCR "WinBoard.FEN\Shell\Open" "" "Open"
\r
447 WriteRegStr HKCR "WinBoard.FEN\Shell\Open\command" "" '"$INSTDIR\WinBoard\WinBoard.exe" -ini "$INSTDIR\WinBoard\WinBoard.ini" @viewer -lpf "%1"'
\r
453 ;--------------------------------
\r
458 LangString DESC_Core ${LANG_ENGLISH} "Winboard Core Components - Executable, Help Files, Protocol Adapters, Settings Files and Graphics"
\r
459 LangString DESC_Profiles ${LANG_ENGLISH} "Components only of Interest to Specific User Profiles"
\r
460 LangString DESC_Xiangqi ${LANG_ENGLISH} "Xiangqi (Chinese Chess) Engines and Graphics"
\r
461 LangString DESC_fmax ${LANG_ENGLISH} "Small Chess engine, also plays Gothic, Cylinder, Berolina, Capablanca, Superchess, Knightmate, Great Shatranj"
\r
462 LangString DESC_Fruit ${LANG_ENGLISH} "Very strong Chess engine suitable for analysis, by Fabien Letouzy"
\r
463 LangString DESC_Variants ${LANG_ENGLISH} "Engines for Chess-Variant Afficionados (e.g. Crazyhouse, Chess960, Gothic Chess)"
\r
464 LangString DESC_Tournaments ${LANG_ENGLISH} "PSWBTM Tournament Manager for running automated engine-engine tournaments with WinBoard"
\r
465 LangString DESC_XQgraphics ${LANG_ENGLISH} "Oriental-style board and pieces for WinBoard (the XQ-engine shortcuts won't work without it!)"
\r
466 LangString DESC_HaQi ${LANG_ENGLISH} "HaQiKi D 0.8, a strong Xiangqi engine by H.G. Muller"
\r
467 LangString DESC_EleEye ${LANG_ENGLISH} "Elephant Eye 3.1, a very strong Xiangqi engine by Morning Yellow"
\r
468 LangString DESC_Joker ${LANG_ENGLISH} "Joker80 Gothic-Chess engine and JokerKM Knightmate engine by H.G.Muller"
\r
469 LangString DESC_Pulsar ${LANG_ENGLISH} "Plays Chess960, Crazyhouse, Losers, Suicide, Giveway, Atomic, 3Check, TwoKings, Shatranj and standard Chess"
\r
470 LangString DESC_ShaMax ${LANG_ENGLISH} "A derivative of the Fairy-Max engine dedicated to playing Shatranj"
\r
471 LangString DESC_Smirf ${LANG_ENGLISH} "Smirfoglot adapter for Reinhard Scharnagl's SMIRF 10x8 and 8x8 Chess engine"
\r
474 ;Assign language strings to sections
\r
476 !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
\r
477 !insertmacro MUI_DESCRIPTION_TEXT ${Core} $(DESC_Core)
\r
478 !insertmacro MUI_DESCRIPTION_TEXT ${Profiles} $(DESC_Profiles)
\r
479 !insertmacro MUI_DESCRIPTION_TEXT ${Xiangqi} $(DESC_Xiangqi)
\r
480 !insertmacro MUI_DESCRIPTION_TEXT ${fmax} $(DESC_fmax)
\r
481 !insertmacro MUI_DESCRIPTION_TEXT ${Fruit} $(DESC_Fruit)
\r
482 !insertmacro MUI_DESCRIPTION_TEXT ${Variants} $(DESC_Variants)
\r
483 !insertmacro MUI_DESCRIPTION_TEXT ${Tournaments} $(DESC_Tournaments)
\r
484 !insertmacro MUI_DESCRIPTION_TEXT ${XQgraphics} $(DESC_XQgraphics)
\r
485 !insertmacro MUI_DESCRIPTION_TEXT ${HaQi} $(DESC_HaQi)
\r
486 !insertmacro MUI_DESCRIPTION_TEXT ${EleEye} $(DESC_EleEye)
\r
487 !insertmacro MUI_DESCRIPTION_TEXT ${Joker} $(DESC_Joker)
\r
488 !insertmacro MUI_DESCRIPTION_TEXT ${Pulsar} $(DESC_Pulsar)
\r
489 !insertmacro MUI_DESCRIPTION_TEXT ${ShaMax} $(DESC_ShaMax)
\r
490 !insertmacro MUI_DESCRIPTION_TEXT ${Smirf} $(DESC_Smirf)
\r
491 !insertmacro MUI_FUNCTION_DESCRIPTION_END
\r
493 ;--------------------------------
\r
495 ;--------------------------------
\r
496 ;Uninstaller Section
\r
498 ; Function to delete install directory if non-empty on user request
\r
499 Function un.ForceDirectoryDelete
\r
501 MessageBox MB_YESNO "The uninstaller was unable to delete the directory '$INSTDIR'. This is usually$\r$\ndue to user-created files such as WinBoard.ini, or other configuration files. If$\r$\nyou wish to keep your old configuration files, select No.$\r$\n$\r$\nForce deletion of install directory and all files in it?" IDNO End
\r
503 RMDir /r "$INSTDIR"
\r
510 Section "Uninstall"
\r
512 Delete "$INSTDIR\WinBoard\PG\fruit.ini"
\r
513 Delete "$INSTDIR\WinBoard\logos\chessclub.com.bmp"
\r
514 Delete "$INSTDIR\WinBoard\logos\freechess.org.bmp"
\r
515 Delete "$INSTDIR\WinBoard\logos\administrator.bmp"
\r
516 Delete "$INSTDIR\WinBoard\logos\guest.bmp"
\r
517 Delete "$INSTDIR\WinBoard\logos\user.bmp"
\r
518 Delete "$INSTDIR\WinBoard\logos\README.txt"
\r
519 Delete "$INSTDIR\WinBoard\textures\marble_l.bmp"
\r
520 Delete "$INSTDIR\WinBoard\textures\marble_d.bmp"
\r
521 Delete "$INSTDIR\WinBoard\textures\wood_l.bmp"
\r
522 Delete "$INSTDIR\WinBoard\textures\wood_d.bmp"
\r
523 Delete "$INSTDIR\WinBoard\textures\xqboard.bmp"
\r
524 Delete "$INSTDIR\Fairy-Max\fmax.exe"
\r
525 Delete "$INSTDIR\Fairy-Max\MaxQi.exe"
\r
526 Delete "$INSTDIR\Fairy-Max\fmax.ini"
\r
527 Delete "$INSTDIR\Fairy-Max\qmax.ini"
\r
528 Delete "$INSTDIR\Fairy-Max\logo.bmp"
\r
529 Delete "$INSTDIR\WinBoard\doc\engine-intf.html"
\r
530 Delete "$INSTDIR\WinBoard\doc\FAQ.html"
\r
531 Delete "$INSTDIR\WinBoard\doc\fonts.html"
\r
532 Delete "$INSTDIR\WinBoard\doc\manual.html"
\r
533 Delete "$INSTDIR\WinBoard\doc\UCIconfig.html"
\r
534 Delete "$INSTDIR\WinBoard\doc\shortcuts.html"
\r
535 Delete "$INSTDIR\WinBoard\doc\texture.html"
\r
536 Delete "$INSTDIR\WinBoard\doc\mini.gif"
\r
537 Delete "$INSTDIR\WinBoard\doc\PG2fruit.png"
\r
538 Delete "$INSTDIR\WinBoard\doc\zippy.README"
\r
539 Delete "$INSTDIR\WinBoard\doc\COPYING.txt"
\r
540 Delete "$INSTDIR\WinBoard\doc\COPYRIGHT.txt"
\r
541 Delete "$INSTDIR\WinBoard\doc\COPYRIGHTS.txt"
\r
542 Delete "$INSTDIR\WinBoard\doc\README.html"
\r
543 ;Delete "$FONTS\ChessMark.ttf"
\r
544 Delete "$INSTDIR\WinBoard\polyglot.exe"
\r
545 Delete "$INSTDIR\WinBoard\UCCI2WB.exe"
\r
546 Delete "$INSTDIR\WinBoard\timeseal.exe"
\r
547 Delete "$INSTDIR\WinBoard\timestamp.exe"
\r
548 Delete "$INSTDIR\WinBoard\winboard.exe"
\r
549 Delete "$INSTDIR\WinBoard\winboard.hlp"
\r
550 Delete "$INSTDIR\WinBoard\winboard.chm"
\r
551 Delete "$INSTDIR\WinBoard\FICS.ini"
\r
552 Delete "$INSTDIR\WinBoard\ICC.ini"
\r
553 Delete "$INSTDIR\WinBoard\fairy.ini"
\r
554 Delete "$INSTDIR\WinBoard\Gothic.ini"
\r
555 Delete "$INSTDIR\WinBoard\viewer.ini"
\r
556 Delete "$INSTDIR\WinBoard\marble.ini"
\r
557 Delete "$INSTDIR\WinBoard\wood.ini"
\r
558 Delete "$INSTDIR\WinBoard\ICSbot.ini"
\r
559 Delete "$INSTDIR\WinBoard\fruit.ini"
\r
560 Delete "$INSTDIR\WinBoard\winboard.ini"
\r
561 Delete "$INSTDIR\WinBoard\ChessMark.ini"
\r
562 Delete "$INSTDIR\WinBoard\default_book.bin"
\r
563 Delete "$INSTDIR\WinBoard\zippy.lines"
\r
564 Delete "$INSTDIR\WinBoard\textures\xqwood.bmp"
\r
565 Delete "$INSTDIR\WinBoard\FICS.lnk"
\r
566 Delete "$INSTDIR\WinBoard\ICC.lnk"
\r
567 Delete "$INSTDIR\WinBoard\Fairy-Max.lnk"
\r
568 Delete "$INSTDIR\WinBoard\PGN Viewer.lnk"
\r
569 Delete "$INSTDIR\WinBoard\my WinBoard.lnk"
\r
570 Delete "$INSTDIR\WinBoard\Fairy-Max ICS bot.lnk"
\r
571 Delete "$INSTDIR\WinBoard\Fruit.lnk"
\r
572 Delete "$INSTDIR\WinBoard\polyglot_1st.ini"
\r
573 Delete "$INSTDIR\WinBoard\polyglot_2nd.ini"
\r
575 Delete "$INSTDIR\Fruit\fruit_21.exe"
\r
576 Delete "$INSTDIR\Fruit\copying.txt"
\r
577 Delete "$INSTDIR\Fruit\readme.txt"
\r
578 Delete "$INSTDIR\Fruit\technical_10.txt"
\r
579 Delete "$INSTDIR\Fruit\logo.bmp"
\r
581 Delete "$INSTDIR\HaQi\haqikid.exe"
\r
582 Delete "$INSTDIR\HaQi\logo.bmp"
\r
583 Delete "$INSTDIR\EleEye\ELEEYE.exe"
\r
584 Delete "$INSTDIR\EleEye\ATOM.DLL"
\r
585 Delete "$INSTDIR\EleEye\CCHESS.DLL"
\r
586 Delete "$INSTDIR\EleEye\EVALUATE.DLL"
\r
587 Delete "$INSTDIR\EleEye\BOOK.DAT"
\r
588 Delete "$INSTDIR\EleEye\logo.bmp"
\r
589 Delete "$INSTDIR\WinBoard\QH\eleeye.ini"
\r
590 ;Delete "$FONTS\XIANGQI.ttf"
\r
591 Delete "$INSTDIR\WinBoard\xq_book.bin"
\r
592 Delete "$INSTDIR\WinBoard\QH2WB.exe"
\r
593 Delete "$INSTDIR\WinBoard\xq.ini"
\r
595 Delete "$INSTDIR\Pulsar\Pulsar2009-9b.exe"
\r
596 Delete "$INSTDIR\Pulsar\atomicBookBlack.txt"
\r
597 Delete "$INSTDIR\Pulsar\atomicBookWhite.txt"
\r
598 Delete "$INSTDIR\Pulsar\kingsBookBlack.txt"
\r
599 Delete "$INSTDIR\Pulsar\kingsBookWhite.txt"
\r
600 Delete "$INSTDIR\Pulsar\losersBlack.txt"
\r
601 Delete "$INSTDIR\Pulsar\losersWhite.txt"
\r
602 Delete "$INSTDIR\Pulsar\pulsarCrazyBlack.txt"
\r
603 Delete "$INSTDIR\Pulsar\pulsarCrazyWhite.txt"
\r
604 Delete "$INSTDIR\Pulsar\pulsarShatranjBlack.txt"
\r
605 Delete "$INSTDIR\Pulsar\pulsarShatranjWhite.txt"
\r
606 Delete "$INSTDIR\Pulsar\suicideBookBlack.txt"
\r
607 Delete "$INSTDIR\Pulsar\suicideBookWhite.txt"
\r
608 Delete "$INSTDIR\Pulsar\threeBookBlack.txt"
\r
609 Delete "$INSTDIR\Pulsar\threeBookWhite.txt"
\r
610 Delete "$INSTDIR\Pulsar\bigbook.txt"
\r
611 Delete "$INSTDIR\Pulsar\openbk.txt"
\r
612 Delete "$INSTDIR\Pulsar\logo.bmp"
\r
613 Delete "$INSTDIR\Joker\joker80.exe"
\r
614 Delete "$INSTDIR\Joker\jokerKM.exe"
\r
615 Delete "$INSTDIR\Joker\logo.bmp"
\r
616 Delete "$INSTDIR\SMIRF\Smirfoglot.exe"
\r
617 Delete "$INSTDIR\SMIRF\logo.bmp"
\r
618 Delete "$INSTDIR\Fairy-Max\ShaMax.exe"
\r
620 Delete "$INSTDIR\PSWBTM\PSWBTM.exe"
\r
621 Delete "$INSTDIR\PSWBTM\README.txt"
\r
622 Delete "$INSTDIR\PSWBTM\config.pswbtm"
\r
623 Delete "$INSTDIR\PSWBTM\engines.pswbtm"
\r
624 Delete "$INSTDIR\PSWBTM\ntls.pswbtm"
\r
625 Delete "$INSTDIR\PSWBTM\start positions\nunn.pgn"
\r
626 Delete "$INSTDIR\PSWBTM\start positions\silver.epd"
\r
627 Delete "$INSTDIR\PSWBTM\doc\configure.html"
\r
628 Delete "$INSTDIR\PSWBTM\doc\install.html"
\r
629 Delete "$INSTDIR\PSWBTM\doc\running.html"
\r
630 Delete "$INSTDIR\PSWBTM\doc\tourney.html"
\r
631 Delete "$INSTDIR\PSWBTM\doc\conf.png"
\r
632 Delete "$INSTDIR\PSWBTM\doc\eman.png"
\r
633 Delete "$INSTDIR\PSWBTM\doc\menu.png"
\r
634 Delete "$INSTDIR\PSWBTM\doc\pswbtm.png"
\r
635 Delete "$INSTDIR\PSWBTM\doc\tour.png"
\r
637 RMDir "$INSTDIR\WinBoard\doc"
\r
638 RMDir "$INSTDIR\WinBoard\logos"
\r
639 RMDir "$INSTDIR\WinBoard\textures"
\r
640 RMDir "$INSTDIR\WinBoard\PG"
\r
641 RMDir "$INSTDIR\WinBoard\QH"
\r
642 RMDir "$INSTDIR\WinBoard"
\r
643 RMDir "$INSTDIR\Fairy-Max"
\r
644 RMDir "$INSTDIR\Pulsar"
\r
645 RMDir "$INSTDIR\Joker"
\r
646 RMDir "$INSTDIR\Fruit"
\r
647 RMDir "$INSTDIR\PSWBTM\doc"
\r
648 RMDir "$INSTDIR\PSWBTM\games"
\r
649 RMDir "$INSTDIR\PSWBTM\start positions"
\r
650 RMDir "$INSTDIR\PSWBTM"
\r
651 RMDir "$INSTDIR\SMIRF"
\r
652 RMDir "$INSTDIR\HaQi"
\r
653 RMDir "$INSTDIR\EleEye"
\r
654 Delete "$INSTDIR\uninstall.exe"
\r
658 !insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
\r
660 RMDir /r "$SMPROGRAMS\$MUI_TEMP"
\r
662 ReadRegStr $1 HKCR ".pgn" ""
\r
663 StrCmp $1 "WinBoard.PGN" "" DelFEN
\r
664 ReadRegStr $1 HKCR "WinBoard.PGN\Shell\Open\command" ""
\r
665 StrCmp $1 '"$INSTDIR\WinBoard\WinBoard.exe" -ini "$INSTDIR\WinBoard\WinBoard.ini" @viewer -lgf "%1"' "" DelFEN
\r
666 DeleteRegKey HKCR ".pgn"
\r
667 DeleteRegKey HKCR "WinBoard.PGN"
\r
671 ReadRegStr $1 HKCR ".fen" ""
\r
672 StrCmp $1 "WinBoard.FEN" "" ContDelFEN
\r
673 ReadRegStr $1 HKCR "WinBoard.FEN\Shell\Open\command" ""
\r
674 StrCmp $1 '"$INSTDIR\WinBoard\WinBoard.exe" -ini "$INSTDIR\WinBoard\WinBoard.ini" @viewer -lpf "%1"' "" ContDelFEN
\r
675 DeleteRegKey HKCR ".fen"
\r
676 DeleteRegKey HKCR "WinBoard.FEN"
\r
680 DeleteRegKey HKCU "Software\WinBoard"
\r
683 IfFileExists "$INSTDIR\*.*" GoDirDel Continue
\r
686 Call un.ForceDirectoryDelete
\r