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}COPYRIGHT.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
119 SetOutPath "$INSTDIR"
\r
120 File "${ROOT}README.html"
\r
122 SetOutPath "$INSTDIR\WinBoard\doc"
\r
123 File "${ROOT}WinBoard\doc\fonts.html"
\r
124 File "${ROOT}WinBoard\doc\manual.html"
\r
125 File "${ROOT}WinBoard\doc\UCIconfig.html"
\r
126 File "${ROOT}WinBoard\doc\shortcuts.html"
\r
127 File "${ROOT}WinBoard\doc\texture.html"
\r
128 File "${ROOT}WinBoard\doc\engine-intf.html"
\r
129 File "${ROOT}WinBoard\doc\FAQ.html"
\r
130 File "${ROOT}WinBoard\doc\mini.gif"
\r
131 File "${ROOT}WinBoard\doc\PG2fruit.png"
\r
132 File "${ROOT}WinBoard\doc\zippy.README"
\r
134 ; logo bitmaps for ICS and users
\r
135 SetOutPath "$INSTDIR\WinBoard\logos"
\r
136 File "${ROOT}WinBoard\logos\chessclub.com.bmp"
\r
137 File "${ROOT}WinBoard\logos\freechess.org.bmp"
\r
138 File "${ROOT}WinBoard\logos\administrator.bmp"
\r
139 File "${ROOT}WinBoard\logos\user.bmp"
\r
140 File "${ROOT}WinBoard\logos\guest.bmp"
\r
141 File "${ROOT}WinBoard\logos\README.txt"
\r
143 ; Polyglot ini files; fruit.ini always supplied (even if Fruit not installed) as example
\r
144 SetOutPath "$INSTDIR\WinBoard\PG"
\r
145 File "${ROOT}WinBoard\PG\fruit.ini"
\r
147 ; bitmaps for board squares; xqboard is an entire (even-colored) board grid
\r
148 SetOutPath "$INSTDIR\Winboard\textures"
\r
149 File "${ROOT}WinBoard\textures\marble_d.bmp"
\r
150 File "${ROOT}WinBoard\textures\marble_l.bmp"
\r
151 File "${ROOT}WinBoard\textures\wood_d.bmp"
\r
152 File "${ROOT}WinBoard\textures\wood_l.bmp"
\r
153 File "${ROOT}WinBoard\textures\xqboard.bmp"
\r
155 StrCpy $FONT_DIR $FONTS
\r
156 !insertmacro InstallTTF '${FNTDIR}MARKFONT.TTF'
\r
157 SendMessage ${HWND_BROADCAST} ${WM_FONTCHANGE} 0 0 /TIMEOUT=5000
\r
159 ; the small ini files contain the command-line options used by the shortcuts
\r
160 SetOutPath "$INSTDIR\Winboard"
\r
161 File "${ROOT}Winboard\winboard.ini"
\r
162 File "${ROOT}Winboard\wood.ini"
\r
163 File "${ROOT}Winboard\marble.ini"
\r
164 File "${ROOT}WinBoard\ChessMark.ini"
\r
165 File "${ROOT}Winboard\fairy.ini"
\r
166 File "${ROOT}Winboard\FICS.ini"
\r
167 File "${ROOT}Winboard\fruit.ini"
\r
168 File "${ROOT}Winboard\Gothic.ini"
\r
169 File "${ROOT}Winboard\ICC.ini"
\r
170 File "${ROOT}Winboard\ICSbot.ini"
\r
171 File "${ROOT}Winboard\viewer.ini"
\r
172 File "${ROOT}Winboard\winboard.exe"
\r
173 File "${ROOT}Winboard\polyglot.exe"
\r
174 File "${ROOT}Winboard\timeseal.exe"
\r
175 File "${ROOT}Winboard\timestamp.exe"
\r
176 File "${ROOT}Winboard\winboard.chm"
\r
177 File "${ROOT}Winboard\winboard.hlp"
\r
178 File "${ROOT}Winboard\default_book.bin"
\r
180 ;Create uninstaller
\r
181 WriteUninstaller "$INSTDIR\UnInstall.exe"
\r
183 ; create some shortcuts in the WinBoard folder
\r
184 CreateShortCut "$INSTDIR\WinBoard\PGN Viewer.lnk" "$INSTDIR\WinBoard\winboard.exe" "@viewer" "$INSTDIR\WinBoard\winboard.exe" 0
\r
185 CreateShortCut "$INSTDIR\WinBoard\ICC.lnk" "$INSTDIR\WinBoard\winboard.exe" "@ICC" "$INSTDIR\WinBoard\winboard.exe" 0
\r
186 CreateShortCut "$INSTDIR\WinBoard\FICS.lnk" "$INSTDIR\WinBoard\winboard.exe" "@FICS" "$INSTDIR\WinBoard\winboard.exe" 0
\r
187 CreateShortCut "$INSTDIR\WinBoard\Fairy-Max ICS bot.lnk" "$INSTDIR\WinBoard\winboard.exe" "@ICSbot" "$INSTDIR\WinBoard\winboard.exe" 0
\r
188 CreateShortCut "$INSTDIR\WinBoard\my WinBoard.lnk" "$INSTDIR\WinBoard\winboard.exe" "@marble @ChessMark" "$INSTDIR\WinBoard\winboard.exe" 0
\r
189 CreateShortCut "$INSTDIR\WinBoard\Fruit.lnk" "$INSTDIR\WinBoard\winboard.exe" "@fruit" "$INSTDIR\WinBoard\winboard.exe" 0
\r
190 CreateShortCut "$INSTDIR\WinBoard\Fairy-Max.lnk" "$INSTDIR\WinBoard\winboard.exe" "@fairy" "$INSTDIR\WinBoard\winboard.exe" 0
\r
192 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
193 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER"
\r
194 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Game Viewer.lnk" "$INSTDIR\WinBoard\winboard.exe" "@viewer" "$INSTDIR\WinBoard\winboard.exe" 1
\r
195 ;CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\WinBoard Help.lnk" "$INSTDIR\WinBoard\winboard.hlp"
\r
196 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Frequently Asked Questions.lnk" "$INSTDIR\WinBoard\doc\FAQ.html"
\r
197 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\WinBoard README.lnk" "$INSTDIR\README.html"
\r
198 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\WinBoard UnInstall.lnk" "$INSTDIR\UnInstall.exe"
\r
199 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\WinBoard Files.lnk" "$INSTDIR\WinBoard"
\r
200 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Chess Server - chessclub.com.lnk" "$INSTDIR\WinBoard\winboard.exe" "@ICC" "$INSTDIR\WinBoard\winboard.exe" 0
\r
201 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Chess Server - freechess.org.lnk" "$INSTDIR\WinBoard\winboard.exe" "@FICS" "$INSTDIR\WinBoard\winboard.exe" 0
\r
202 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Fancy-Look WinBoard.lnk" "$INSTDIR\WinBoard\winboard.exe" "@marble @ChessMark" "$INSTDIR\WinBoard\winboard.exe" 2
\r
203 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\WinBoard Startup Dialog.lnk" "$INSTDIR\WinBoard\winboard.exe" "" "$INSTDIR\WinBoard\winboard.exe" 2
\r
204 !insertmacro MUI_STARTMENU_WRITE_END
\r
208 SectionGroup /e "Auxilliary Components and Engines" Profiles
\r
210 Section "Fairy-Max Demo Engine" fmax
\r
212 ; Fairy-Max is so small it can always be included, to have at least one working engine
\r
213 SetOutPath "$INSTDIR\Fairy-Max"
\r
214 File "${ROOT}Fairy-Max\fmax.exe"
\r
215 File "${ROOT}Fairy-Max\MaxQi.exe"
\r
216 File "${ROOT}Fairy-Max\fmax.ini"
\r
217 File "${ROOT}Fairy-Max\qmax.ini"
\r
218 File "${ROOT}Fairy-Max\logo.bmp"
\r
220 ; also create a menu item to play Xiangqi with MaxQi. It is put with the Chess Engines becase it uses western-style board
\r
221 SetOutPath $INSTDIR\WinBoard
\r
222 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
223 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines"
\r
224 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines\Fairy-Max.lnk" "$INSTDIR\WinBoard\winboard.exe" "@fairy" "$INSTDIR\Fairy-Max\fmax.exe" 0
\r
225 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
226 !insertmacro MUI_STARTMENU_WRITE_END
\r
229 Section "Fruit 2.1" Fruit
\r
230 ; we include no separate book for Fruit, as it can use the GUI book. It is mostly included to provide a UCI example
\r
231 SetOutPath "$INSTDIR\Fruit"
\r
232 File "${ROOT}Fruit\copying.txt"
\r
233 File "${ROOT}Fruit\fruit_21.exe"
\r
234 File "${ROOT}Fruit\logo.bmp"
\r
235 File "${ROOT}Fruit\readme.txt"
\r
236 File "${ROOT}Fruit\technical_10.txt"
\r
238 SetOutPath $INSTDIR\WinBoard
\r
239 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines"
\r
240 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
241 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines\Fruit 2.1.lnk" "$INSTDIR\WinBoard\winboard.exe" "@fruit" "$INSTDIR\WinBoard\winboard.exe" 2
\r
242 !insertmacro MUI_STARTMENU_WRITE_END
\r
245 Section "Tournament Manager" Tournaments
\r
246 SetOutPath "$INSTDIR\PSWBTM\doc"
\r
247 File "${ROOT}PSWBTM\doc\configure.html"
\r
248 File "${ROOT}PSWBTM\doc\install.html"
\r
249 File "${ROOT}PSWBTM\doc\running.html"
\r
250 File "${ROOT}PSWBTM\doc\tourney.html"
\r
251 File "${ROOT}PSWBTM\doc\menu.png"
\r
252 File "${ROOT}PSWBTM\doc\conf.png"
\r
253 File "${ROOT}PSWBTM\doc\eman.png"
\r
254 File "${ROOT}PSWBTM\doc\pswbtm.png"
\r
255 File "${ROOT}PSWBTM\doc\tour.png"
\r
257 CreateDirectory "$INSTDIR\PSWBTM\games"
\r
259 SetOutPath "$INSTDIR\PSWBTM\start positions"
\r
260 File "${ROOT}PSWBTM\start positions\nunn.pgn"
\r
261 File "${ROOT}PSWBTM\start positions\silver.epd"
\r
263 SetOutPath "$INSTDIR\PSWBTM"
\r
264 File "${ROOT}PSWBTM\config.pswbtm"
\r
265 File "${ROOT}PSWBTM\engines.pswbtm"
\r
266 File "${ROOT}PSWBTM\ntls.pswbtm"
\r
267 File "${ROOT}PSWBTM\PSWBTM.exe"
\r
268 File "${ROOT}PSWBTM\README.txt"
\r
271 SubSection "Xiangqi" Xiangqi
\r
273 Section "Graphics (required!)" XQgraphics
\r
274 ; the large bitmp of the wooden XQ board is optional, as is the XQ opening book
\r
275 SetOutPath "$INSTDIR\WinBoard"
\r
276 File "${ROOT}Winboard\xq.ini"
\r
277 File "${ROOT}Winboard\xq_book.bin"
\r
278 File "${ROOT}Winboard\UCCI2WB.exe"
\r
279 File "${ROOT}Winboard\QH2WB.exe"
\r
281 SetOutPath "$INSTDIR\WinBoard\textures"
\r
282 File "${ROOT}WinBoard\textures\xqwood.bmp"
\r
284 StrCpy $FONT_DIR $FONTS
\r
285 !insertmacro InstallTTF '${FNTDIR}XIANGQI.TTF'
\r
286 SendMessage ${HWND_BROADCAST} ${WM_FONTCHANGE} 0 0 /TIMEOUT=5000
\r
288 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
289 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER\Xiangqi Engines"
\r
290 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\WinBoard\Xiangqi.lnk" "$INSTDIR\WinBoard\winboard.exe" "@xq" "$INSTDIR\WinBoard\UCCI2WB.exe" 0
\r
291 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
292 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\WinBoard XQ Startup (oriental).lnk" "$INSTDIR\WinBoard\winboard.exe" "@xq" "$INSTDIR\WinBoard\winboard.exe" 2
\r
293 !insertmacro MUI_STARTMENU_WRITE_END
\r
296 Section "HaQiKi D XQ-Engine" HaQi
\r
297 SetOutPath "$INSTDIR\HaQi"
\r
298 File "${ROOT}HaQi\haqikid.exe"
\r
299 File "${ROOT}HaQi\logo.bmp"
\r
300 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER\Xiangqi Engines"
\r
302 SetOutPath $INSTDIR\WinBoard
\r
303 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER\Xiangqi Engines"
\r
304 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
305 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
306 !insertmacro MUI_STARTMENU_WRITE_END
\r
309 Section "Elephant Eye XQ-Engine" EleEye
\r
310 SetOutPath "$INSTDIR\EleEye"
\r
311 File "${ROOT}EleEye\ATOM.DLL"
\r
312 File "${ROOT}EleEye\BOOK.DAT"
\r
313 File "${ROOT}EleEye\CCHESS.DLL"
\r
314 File "${ROOT}EleEye\ELEEYE.EXE"
\r
315 File "${ROOT}EleEye\EVALUATE.DLL"
\r
316 File "${ROOT}EleEye\logo.bmp"
\r
318 SetOutPath "$INSTDIR\WinBoard\QH"
\r
319 File "${ROOT}WinBoard\QH\eleeye.ini"
\r
321 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER\Xiangqi Engines"
\r
322 SetOutPath $INSTDIR\WinBoard
\r
323 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
324 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
325 !insertmacro MUI_STARTMENU_WRITE_END
\r
331 SubSection "Chess Variants" Variants
\r
333 Section "Pulsar Variant Engine (Mike Adams)" Pulsar
\r
334 SetOutPath "$INSTDIR\Pulsar"
\r
335 File "${ROOT}Pulsar\pulsar2009-9b.exe"
\r
336 File "${ROOT}Pulsar\bigbook.txt"
\r
337 File "${ROOT}Pulsar\openbk.txt"
\r
338 File "${ROOT}Pulsar\atomicBookBlack.txt"
\r
339 File "${ROOT}Pulsar\atomicBookWhite.txt"
\r
340 File "${ROOT}Pulsar\kingsBookBlack.txt"
\r
341 File "${ROOT}Pulsar\kingsBookWhite.txt"
\r
342 File "${ROOT}Pulsar\losersBlack.txt"
\r
343 File "${ROOT}Pulsar\losersWhite.txt"
\r
344 File "${ROOT}Pulsar\pulsarCrazyBlack.txt"
\r
345 File "${ROOT}Pulsar\pulsarCrazyWhite.txt"
\r
346 File "${ROOT}Pulsar\pulsarShatranjBlack.txt"
\r
347 File "${ROOT}Pulsar\pulsarShatranjWhite.txt"
\r
348 File "${ROOT}Pulsar\suicideBookBlack.txt"
\r
349 File "${ROOT}Pulsar\suicideBookWhite.txt"
\r
350 File "${ROOT}Pulsar\threeBookBlack.txt"
\r
351 File "${ROOT}Pulsar\threeBookWhite.txt"
\r
352 File "${ROOT}Pulsar\logo.bmp"
\r
354 SetOutPath $INSTDIR\WinBoard
\r
355 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines"
\r
356 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
357 CreateShortCut "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines\Pulsar.lnk" "$INSTDIR\WinBoard\winboard.exe" "@fairy -fcp pulsar2009-9b.exe -fd ..\Pulsar -scp pulsar2009-9b.exe -sd ..\Pulsar -usePolyglotBook false -variant atomic" "$INSTDIR\WinBoard\winboard.exe" 2
\r
358 !insertmacro MUI_STARTMENU_WRITE_END
\r
361 Section "Joker80 Variant Engine" Joker
\r
362 SetOutPath "$INSTDIR\Joker"
\r
363 File "${ROOT}Joker\joker80.exe"
\r
364 File "${ROOT}Joker\jokerKM.exe"
\r
365 File "${ROOT}Joker\logo.bmp"
\r
367 SetOutPath $INSTDIR\WinBoard
\r
368 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines"
\r
369 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
370 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
371 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
372 !insertmacro MUI_STARTMENU_WRITE_END
\r
375 Section "Adapter for SMIRF Engine" Smirf
\r
376 SetOutPath $INSTDIR\SMIRF
\r
377 File "${ROOT}SMIRF\Smirfoglot.exe"
\r
378 File "${ROOT}SMIRF\logo.bmp"
\r
380 SetOutPath $INSTDIR\WinBoard
\r
381 CreateDirectory "$SMPROGRAMS\$START_MENU_FOLDER\Chess Engines"
\r
382 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
383 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
384 !insertmacro MUI_STARTMENU_WRITE_END
\r
387 Section "ShaMax Shatranj Engine" ShaMax
\r
388 SetOutPath $INSTDIR\Fairy-Max
\r
389 File ${ROOT}Fairy-Max\ShaMax.exe
\r
391 SetOutPath $INSTDIR\WinBoard
\r
392 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
\r
393 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
394 !insertmacro MUI_STARTMENU_WRITE_END
\r
400 ;Section "un.Fonts"
\r
401 ; StrCpy $FONT_DIR $FONTS
\r
402 ; !insertmacro RemoveTTF 'MARKFONT.TTF'
\r
403 ; !insertmacro RemoveTTF 'XIANGI.TTF'
\r
404 ; SendMessage ${HWND_BROADCAST} ${WM_FONTCHANGE} 0 0 /TIMEOUT=5000
\r
407 ;--------------------------------
\r
408 ;Installer Functions
\r
411 ;Extract InstallOptions INI files
\r
412 !insertmacro MUI_INSTALLOPTIONS_EXTRACT "FA.ini"
\r
418 !insertmacro MUI_HEADER_TEXT "Windows File Associations" "Do you want to use Winboard as your viewer for the following file types?"
\r
419 !insertmacro MUI_INSTALLOPTIONS_DISPLAY "FA.ini"
\r
422 ;Read a value from an InstallOptions INI file
\r
424 !insertmacro MUI_INSTALLOPTIONS_READ $INI_VALUE "FA.ini" "Field 2" "State"
\r
426 ;Display a messagebox if check box was checked
\r
427 StrCmp $INI_VALUE "1" "" CheckFEN
\r
428 WriteRegStr HKCR ".pgn" "" "WinBoard.PGN"
\r
429 WriteRegStr HKCR ".pgn" "Content Type" "application/x-chess-pgn"
\r
430 WriteRegStr HKCR "WinBoard.PGN" "" "Chess Game"
\r
431 WriteRegStr HKCR "WinBoard.PGN\DefaultIcon" "" "$INSTDIR\WinBoard.exe,1"
\r
432 WriteRegStr HKCR "WinBoard.PGN\Shell\Open" "" "Open"
\r
433 WriteRegStr HKCR "WinBoard.PGN\Shell\Open\command" "" '"$INSTDIR\WinBoard.exe" -ini "$INSTDIR\WinBoard.ini" -ncp -lgf "%1"'
\r
436 !insertmacro MUI_INSTALLOPTIONS_READ $INI_VALUE "FA.ini" "Field 3" "State"
\r
438 ;Display a messagebox if check box was checked
\r
439 StrCmp $INI_VALUE "1" "" Continue
\r
440 WriteRegStr HKCR ".fen" "" "WinBoard.FEN"
\r
441 WriteRegStr HKCR ".fen" "Content Type" "application/x-chess-fen"
\r
442 WriteRegStr HKCR "WinBoard.FEN" "" "Chess Position"
\r
443 WriteRegStr HKCR "WinBoard.FEN\DefaultIcon" "" "$INSTDIR\WinBoard.exe,1"
\r
444 WriteRegStr HKCR "WinBoard.FEN\Shell\Open" "" "Open"
\r
445 WriteRegStr HKCR "WinBoard.FEN\Shell\Open\command" "" '"$INSTDIR\WinBoard.exe" -ini "$INSTDIR\WinBoard.ini" -ncp -lpf "%1"'
\r
451 ;--------------------------------
\r
456 LangString DESC_Core ${LANG_ENGLISH} "Winboard Core Components - Executable, Help Files, Protocol Adapters, Settings Files and Graphics"
\r
457 LangString DESC_Profiles ${LANG_ENGLISH} "Components only of Interest to Specific User Profiles"
\r
458 LangString DESC_Xiangqi ${LANG_ENGLISH} "Xiangqi (Chinese Chess) Engines and Graphics"
\r
459 LangString DESC_fmax ${LANG_ENGLISH} "Small Chess engine, also plays Gothic, Cylinder, Berolina, Capablanca, Superchess, Knightmate, Great Shatranj"
\r
460 LangString DESC_Fruit ${LANG_ENGLISH} "Very strong Chess engine suitable for analysis, by Fabien Letouzy"
\r
461 LangString DESC_Variants ${LANG_ENGLISH} "Engines for Chess-Variant Afficionados (e.g. Crazyhouse, Chess960, Gothic Chess)"
\r
462 LangString DESC_Tournaments ${LANG_ENGLISH} "PSWBTM Tournament Manager for running automated engine-engine tournaments with WinBoard"
\r
463 LangString DESC_XQgraphics ${LANG_ENGLISH} "Oriental-style board and pieces for WinBoard (the XQ-engine shortcuts won't work without it!)"
\r
464 LangString DESC_HaQi ${LANG_ENGLISH} "HaQiKi D 0.8, a strong Xiangqi engine by H.G. Muller"
\r
465 LangString DESC_EleEye ${LANG_ENGLISH} "Elephant Eye 3.1, a very strong Xiangqi engine by Morning Yellow"
\r
466 LangString DESC_Joker ${LANG_ENGLISH} "Joker80 Gothic-Chess engine and JokerKM Knightmate engine by H.G.Muller"
\r
467 LangString DESC_Pulsar ${LANG_ENGLISH} "Plays Chess960, Crazyhouse, Losers, Suicide, Giveway, Atomic, 3Check, TwoKings, Shatranj and standard Chess"
\r
468 LangString DESC_ShaMax ${LANG_ENGLISH} "A derivative of the Fairy-Max engine dedicated to playing Shatranj"
\r
469 LangString DESC_Smirf ${LANG_ENGLISH} "Smirfoglot adapter for Reinhard Scharnagl's SMIRF 10x8 and 8x8 Chess engine"
\r
472 ;Assign language strings to sections
\r
474 !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
\r
475 !insertmacro MUI_DESCRIPTION_TEXT ${Core} $(DESC_Core)
\r
476 !insertmacro MUI_DESCRIPTION_TEXT ${Profiles} $(DESC_Profiles)
\r
477 !insertmacro MUI_DESCRIPTION_TEXT ${Xiangqi} $(DESC_Xiangqi)
\r
478 !insertmacro MUI_DESCRIPTION_TEXT ${fmax} $(DESC_fmax)
\r
479 !insertmacro MUI_DESCRIPTION_TEXT ${Fruit} $(DESC_Fruit)
\r
480 !insertmacro MUI_DESCRIPTION_TEXT ${Variants} $(DESC_Variants)
\r
481 !insertmacro MUI_DESCRIPTION_TEXT ${Tournaments} $(DESC_Tournaments)
\r
482 !insertmacro MUI_DESCRIPTION_TEXT ${XQgraphics} $(DESC_XQgraphics)
\r
483 !insertmacro MUI_DESCRIPTION_TEXT ${HaQi} $(DESC_HaQi)
\r
484 !insertmacro MUI_DESCRIPTION_TEXT ${EleEye} $(DESC_EleEye)
\r
485 !insertmacro MUI_DESCRIPTION_TEXT ${Joker} $(DESC_Joker)
\r
486 !insertmacro MUI_DESCRIPTION_TEXT ${Pulsar} $(DESC_Pulsar)
\r
487 !insertmacro MUI_DESCRIPTION_TEXT ${ShaMax} $(DESC_ShaMax)
\r
488 !insertmacro MUI_DESCRIPTION_TEXT ${Smirf} $(DESC_Smirf)
\r
489 !insertmacro MUI_FUNCTION_DESCRIPTION_END
\r
491 ;--------------------------------
\r
493 ;--------------------------------
\r
494 ;Uninstaller Section
\r
496 ; Function to delete install directory if non-empty on user request
\r
497 Function un.ForceDirectoryDelete
\r
499 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
501 RMDir /r "$INSTDIR"
\r
508 Section "Uninstall"
\r
510 Delete "$INSTDIR\COPYING.txt"
\r
511 Delete "$INSTDIR\COPYRIGHT.txt"
\r
512 Delete "$INSTDIR\README.html"
\r
513 Delete "$INSTDIR\WinBoard\PG\fruit.ini"
\r
514 Delete "$INSTDIR\WinBoard\logos\chessclub.com.bmp"
\r
515 Delete "$INSTDIR\WinBoard\logos\freechess.org.bmp"
\r
516 Delete "$INSTDIR\WinBoard\logos\administrator.bmp"
\r
517 Delete "$INSTDIR\WinBoard\logos\guest.bmp"
\r
518 Delete "$INSTDIR\WinBoard\logos\user.bmp"
\r
519 Delete "$INSTDIR\WinBoard\logos\README.txt"
\r
520 Delete "$INSTDIR\WinBoard\textures\marble_l.bmp"
\r
521 Delete "$INSTDIR\WinBoard\textures\marble_d.bmp"
\r
522 Delete "$INSTDIR\WinBoard\textures\wood_l.bmp"
\r
523 Delete "$INSTDIR\WinBoard\textures\wood_d.bmp"
\r
524 Delete "$INSTDIR\WinBoard\textures\xqboard.bmp"
\r
525 Delete "$INSTDIR\Fairy-Max\fmax.exe"
\r
526 Delete "$INSTDIR\Fairy-Max\MaxQi.exe"
\r
527 Delete "$INSTDIR\Fairy-Max\fmax.ini"
\r
528 Delete "$INSTDIR\Fairy-Max\qmax.ini"
\r
529 Delete "$INSTDIR\Fairy-Max\logo.bmp"
\r
530 Delete "$INSTDIR\WinBoard\doc\engine-intf.html"
\r
531 Delete "$INSTDIR\WinBoard\doc\FAQ.html"
\r
532 Delete "$INSTDIR\WinBoard\doc\fonts.html"
\r
533 Delete "$INSTDIR\WinBoard\doc\manual.html"
\r
534 Delete "$INSTDIR\WinBoard\doc\UCIconfig.html"
\r
535 Delete "$INSTDIR\WinBoard\doc\shortcuts.html"
\r
536 Delete "$INSTDIR\WinBoard\doc\texture.html"
\r
537 Delete "$INSTDIR\WinBoard\doc\mini.gif"
\r
538 Delete "$INSTDIR\WinBoard\doc\PG2fruit.png"
\r
539 Delete "$INSTDIR\WinBoard\doc\zippy.README"
\r
540 ;Delete "$FONTS\ChessMark.ttf"
\r
541 Delete "$INSTDIR\WinBoard\polyglot.exe"
\r
542 Delete "$INSTDIR\WinBoard\UCCI2WB.exe"
\r
543 Delete "$INSTDIR\WinBoard\timeseal.exe"
\r
544 Delete "$INSTDIR\WinBoard\timestamp.exe"
\r
545 Delete "$INSTDIR\WinBoard\winboard.exe"
\r
546 Delete "$INSTDIR\WinBoard\winboard.hlp"
\r
547 Delete "$INSTDIR\WinBoard\winboard.chm"
\r
548 Delete "$INSTDIR\WinBoard\FICS.ini"
\r
549 Delete "$INSTDIR\WinBoard\ICC.ini"
\r
550 Delete "$INSTDIR\WinBoard\fairy.ini"
\r
551 Delete "$INSTDIR\WinBoard\Gothic.ini"
\r
552 Delete "$INSTDIR\WinBoard\viewer.ini"
\r
553 Delete "$INSTDIR\WinBoard\marble.ini"
\r
554 Delete "$INSTDIR\WinBoard\wood.ini"
\r
555 Delete "$INSTDIR\WinBoard\ICSbot.ini"
\r
556 Delete "$INSTDIR\WinBoard\fruit.ini"
\r
557 Delete "$INSTDIR\WinBoard\winboard.ini"
\r
558 Delete "$INSTDIR\WinBoard\ChessMark.ini"
\r
559 Delete "$INSTDIR\WinBoard\default_book.bin"
\r
560 Delete "$INSTDIR\WinBoard\zippy.lines"
\r
561 Delete "$INSTDIR\WinBoard\textures\xqwood.bmp"
\r
562 Delete "$INSTDIR\WinBoard\FICS.lnk"
\r
563 Delete "$INSTDIR\WinBoard\ICC.lnk"
\r
564 Delete "$INSTDIR\WinBoard\Fairy-Max.lnk"
\r
565 Delete "$INSTDIR\WinBoard\PGN Viewer.lnk"
\r
566 Delete "$INSTDIR\WinBoard\my WinBoard.lnk"
\r
567 Delete "$INSTDIR\WinBoard\Fairy-Max ICS bot.lnk"
\r
568 Delete "$INSTDIR\WinBoard\Fruit.lnk"
\r
569 Delete "$INSTDIR\WinBoard\polyglot_1st.ini"
\r
570 Delete "$INSTDIR\WinBoard\polyglot_2nd.ini"
\r
572 Delete "$INSTDIR\Fruit\fruit_21.exe"
\r
573 Delete "$INSTDIR\Fruit\copying.txt"
\r
574 Delete "$INSTDIR\Fruit\readme.txt"
\r
575 Delete "$INSTDIR\Fruit\technical_10.txt"
\r
576 Delete "$INSTDIR\Fruit\logo.bmp"
\r
578 Delete "$INSTDIR\HaQi\haqikid.exe"
\r
579 Delete "$INSTDIR\HaQi\logo.bmp"
\r
580 Delete "$INSTDIR\EleEye\ELEEYE.exe"
\r
581 Delete "$INSTDIR\EleEye\ATOM.DLL"
\r
582 Delete "$INSTDIR\EleEye\CCHESS.DLL"
\r
583 Delete "$INSTDIR\EleEye\EVALUATE.DLL"
\r
584 Delete "$INSTDIR\EleEye\BOOK.DAT"
\r
585 Delete "$INSTDIR\EleEye\logo.bmp"
\r
586 Delete "$INSTDIR\WinBoard\QH\eleeye.ini"
\r
587 ;Delete "$FONTS\XIANGQI.ttf"
\r
588 Delete "$INSTDIR\WinBoard\xq_book.bin"
\r
589 Delete "$INSTDIR\WinBoard\QH2WB.exe"
\r
590 Delete "$INSTDIR\WinBoard\xq.ini"
\r
592 Delete "$INSTDIR\Pulsar\Pulsar2009-9b.exe"
\r
593 Delete "$INSTDIR\Pulsar\atomicBookBlack.txt"
\r
594 Delete "$INSTDIR\Pulsar\atomicBookWhite.txt"
\r
595 Delete "$INSTDIR\Pulsar\kingsBookBlack.txt"
\r
596 Delete "$INSTDIR\Pulsar\kingsBookWhite.txt"
\r
597 Delete "$INSTDIR\Pulsar\losersBlack.txt"
\r
598 Delete "$INSTDIR\Pulsar\losersWhite.txt"
\r
599 Delete "$INSTDIR\Pulsar\pulsarCrazyBlack.txt"
\r
600 Delete "$INSTDIR\Pulsar\pulsarCrazyWhite.txt"
\r
601 Delete "$INSTDIR\Pulsar\pulsarShatranjBlack.txt"
\r
602 Delete "$INSTDIR\Pulsar\pulsarShatranjWhite.txt"
\r
603 Delete "$INSTDIR\Pulsar\suicideBookBlack.txt"
\r
604 Delete "$INSTDIR\Pulsar\suicideBookWhite.txt"
\r
605 Delete "$INSTDIR\Pulsar\threeBookBlack.txt"
\r
606 Delete "$INSTDIR\Pulsar\threeBookWhite.txt"
\r
607 Delete "$INSTDIR\Pulsar\bigbook.txt"
\r
608 Delete "$INSTDIR\Pulsar\openbk.txt"
\r
609 Delete "$INSTDIR\Pulsar\logo.bmp"
\r
610 Delete "$INSTDIR\Joker\joker80.exe"
\r
611 Delete "$INSTDIR\Joker\jokerKM.exe"
\r
612 Delete "$INSTDIR\Joker\logo.bmp"
\r
613 Delete "$INSTDIR\SMIRF\Smirfoglot.exe"
\r
614 Delete "$INSTDIR\SMIRF\logo.bmp"
\r
615 Delete "$INSTDIR\Fairy-Max\ShaMax.exe"
\r
617 Delete "$INSTDIR\PSWBTM\PSWBTM.exe"
\r
618 Delete "$INSTDIR\PSWBTM\README.txt"
\r
619 Delete "$INSTDIR\PSWBTM\config.pswbtm"
\r
620 Delete "$INSTDIR\PSWBTM\engines.pswbtm"
\r
621 Delete "$INSTDIR\PSWBTM\ntls.pswbtm"
\r
622 Delete "$INSTDIR\PSWBTM\start positions\nunn.pgn"
\r
623 Delete "$INSTDIR\PSWBTM\start positions\silver.epd"
\r
624 Delete "$INSTDIR\PSWBTM\doc\configure.html"
\r
625 Delete "$INSTDIR\PSWBTM\doc\install.html"
\r
626 Delete "$INSTDIR\PSWBTM\doc\running.html"
\r
627 Delete "$INSTDIR\PSWBTM\doc\tourney.html"
\r
628 Delete "$INSTDIR\PSWBTM\doc\conf.png"
\r
629 Delete "$INSTDIR\PSWBTM\doc\eman.png"
\r
630 Delete "$INSTDIR\PSWBTM\doc\menu.png"
\r
631 Delete "$INSTDIR\PSWBTM\doc\pswbtm.png"
\r
632 Delete "$INSTDIR\PSWBTM\doc\tour.png"
\r
634 RMDir "$INSTDIR\WinBoard\doc"
\r
635 RMDir "$INSTDIR\WinBoard\logos"
\r
636 RMDir "$INSTDIR\WinBoard\textures"
\r
637 RMDir "$INSTDIR\WinBoard\PG"
\r
638 RMDir "$INSTDIR\WinBoard\QH"
\r
639 RMDir "$INSTDIR\WinBoard"
\r
640 RMDir "$INSTDIR\Fairy-Max"
\r
641 RMDir "$INSTDIR\Pulsar"
\r
642 RMDir "$INSTDIR\Joker"
\r
643 RMDir "$INSTDIR\Fruit"
\r
644 RMDir "$INSTDIR\PSWBTM\doc"
\r
645 RMDir "$INSTDIR\PSWBTM\games"
\r
646 RMDir "$INSTDIR\PSWBTM\start positions"
\r
647 RMDir "$INSTDIR\PSWBTM"
\r
648 RMDir "$INSTDIR\SMIRF"
\r
649 RMDir "$INSTDIR\HaQi"
\r
650 RMDir "$INSTDIR\EleEye"
\r
654 !insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
\r
656 RMDir /r "$SMPROGRAMS\$MUI_TEMP"
\r
658 ReadRegStr $1 HKCR ".pgn" ""
\r
659 StrCmp $1 "WinBoard.PGN" "" DelFEN
\r
660 ReadRegStr $1 HKCR "WinBoard.PGN\Shell\Open\command" ""
\r
661 StrCmp $1 '"$INSTDIR\WinBoard.exe" -ini "$INSTDIR\WinBoard.ini" -ncp -lgf "%1"' "" DelFEN
\r
662 DeleteRegKey HKCR ".pgn"
\r
663 DeleteRegKey HKCR "WinBoard.PGN"
\r
667 ReadRegStr $1 HKCR ".fen" ""
\r
668 StrCmp $1 "WinBoard.FEN" "" ContDelFEN
\r
669 ReadRegStr $1 HKCR "WinBoard.FEN\Shell\Open\command" ""
\r
670 StrCmp $1 '"$INSTDIR\WinBoard.exe" -ini "$INSTDIR\WinBoard.ini" -ncp -lpf "%1"' "" ContDelFEN
\r
671 DeleteRegKey HKCR ".fen"
\r
672 DeleteRegKey HKCR "WinBoard.FEN"
\r
676 DeleteRegKey HKCU "Software\WinBoard"
\r
679 IfFileExists "$INSTDIR\*.*" GoDirDel Continue
\r
682 Call un.ForceDirectoryDelete
\r