home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format CD 8
/
amigaformatcd08.iso
/
screenplay
/
shareware
/
boulderdäsh
/
install
/
boulderdäsh.install
next >
Wrap
Text File
|
1996-10-13
|
16KB
|
476 lines
; $VER: BoulderDäsh.install 1.58 (30.07.96)
; Install script for BoulderDäsh (Workbench 2.0 or higher)
;
(COMPLETE 0)
;(USER 2)
(SET #ApplicationName "BoulderDäsh")
(SET #ApplicationDir "sys:")
(SET #ArchiveDir "/")
(SET #Language -1)
(SET #Documents -1)
(SET #ApplicationKeyfile (CAT #ApplicationName ".key"))
;=============================================================================
; German strings
(IF (= @language "deutsch")
(
(SET default_lang 2)
(SET #bad-kick "Sie benötigen Workbench 2.0 oder größer")
(SET #bad-installer
(CAT "Achtung! Es ist eine alte Version des Programmes 'Installer' "
"auf Ihrem Amiga!\n\nDie Installation benötigt mindestens Installer 42.9.\n\n"
"Bitte überprüfen Sie Ihre Konfiguration!\n"
"Wenn Sie fortfahren, wird eine Vollinstallation vorgenommen, das heißt\n"
"es werden alle Kataloge,Anleitungen und die OS2.0+ Version installiert.\n"
"%s ist auch dann voll einsatzfähig!"
))
(SET #App-InstallMsg
(CAT "\n\%s Installationsskript.\n"
"Diese Skript installiert %s auf Ihrem Amiga.\n\n"
"Lesen Sie das Anleitungs-File für weitere Informationen\n"
" über den Vertrieb von %s.\n\n"
"%s © 1995-96 Guido Mersmann\n"
"All Rechte reserviert."
))
(SET #App-Where
(CAT "Wo möchten Sie %s installieren ?\n"
"(Ein Verzeichnis wird angelegt)"
))
(SET #App-Update
(CAT "\nEin %s-Verzeichnis existiert im ausgewählen"
" Verzeichnis. Wenn Sie fortfahren,"
" bestätigen Sie, daß Sie die alte %s-Installation"
" mit der neuesten Version updaten wollen.\n"
"Verschiedene %s-Dateien (z.B Prefs) werden falls nötig überschrieben!"
))
(SET #App-Main "Welche Version von %s möchten Sie installieren?")
(SET #App-Main-help
(CAT "Die OS2.0+ Version läuft unter allen Systemen ab OS2.0."
" Die OS2.1+ Version hat den Nutzen, daß sie weniger Resourcen"
" benutzt, wenn sich %s im Hintergrund befindet. Dazu MUß"
" die Locale.library eingebunden sein. Für die OS3.0+ gilt das selbe"
" wie für die OS2.1 Verison. Es werden OS3.0+ Routinen benutzt, die"
" weiteren Speicher sparen."
))
(SET #App-Language "Welche Sprachen sollen installiert werden ?")
(SET #App-Language-help
(CAT "\nDer Amiga kann in vielen verschiedenen Sprachen"
" arbeiten. Um Plattenkapazität zu sparen können Sie"
" nur die Sprachen anwählen, die sie benötigen"
" Haken Sie also einfach die Sprachen ab, die Sie"
" Ihrem System zugänglich machen wollen."
@askoptions-help
))
(SET #App-Docs "Welche Anleitungs- und Informationsdateien wollen Sie installieren ?")
(SET #startup-prompt "Es müssen zu S:User-Startup einige Eintragungen für %s hinzugefügt werden:\n\n%s")
(SET #App-Exit "\n%s installiert !!")
))
;=============================================================================
; English strings
(IF (<> @language "deutsch")
(
(SET default_lang 4)
(SET #bad-kick "You must have at least Workbench 2.0+")
(SET #bad-installer
(CAT "You have an old version of the program 'Installer' "
"on your Amiga!\n\nThe installation procedure needs at least Installer 42.9.\n\n"
"Please check your configuration!\n\n"
"If you proceed the whole archive will be installed.\n"
"%s will work without any restrictions!"
))
(SET #App-InstallMsg
(CAT "\n\%s installation script.\n"
"This script installs %s on your Amiga.\n\n"
"Read the DOK-file for more information\n"
" on the distribution of %s.\n\n"
"%s © 1995-96 Guido Mersmann\n"
"All rights reserved."
))
(SET #App-Where
(CAT "Where would you like to install %s ?\n"
"(A drawer will be created)"
))
(SET #App-Update
(CAT "\nA %s drawer does already exist in the selected "
" directory. By selecting \"Proceed\", you"
" indicate that you want to update the %s"
" installation with the most recent version.\n"
"Several %s specific files will be overwritten!"
))
(SET #App-Main "Which %s version should be installed ?")
(SET #App-Main-help
(CAT "The OS2.0+ version should only be used on Systems with OS2."
" The OS2.1+ and the OS3.0+ version need less Memory. Locale is required!"
" Special OS3.0+ functions are used to save more memory."
))
(SET #App-Language "Which languages should be installed ?")
(SET #App-Language-help
(CAT "\nThe Amiga can be operated in many different"
" languages."
"To reduce the amount of space consumed by the"
" language files, you can select to have only the"
" files of specific languages copied.\n\n"
"Simply check the boxes of the languages you wish"
" to have available on your system.\n\n"
@askoptions-help
))
(SET #App-Docs "Which Amiga-guide files should be installed ?")
(SET #startup-prompt "Some lines need to be added to S:User-Startup for %s\n\n%s")
(SET #App-Exit "\n%s installed !!")
))
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; P_Requirements
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_Requirements
; Workbench 37 or better required
(IF (< (/ (getversion) 65536) 37)
(
(abort #bad-kick)
)
)
; Installer 42.9 or better required
(if (< @installer-version 2752521)
(
(user 2)
(message (#bad-installer #ApplicationName))
(welcome)
;---- Simple Copy all ask
(SET #ApplicationDir
(TACKON
(ASKDIR
(PROMPT (#App-Where #ApplicationName))
(HELP @askdir-help)
(default #ApplicationDir)
)
#ApplicationName
)
)
(MAKEDIR #ApplicationDir (INFOS))
(COPYFILES
(SOURCE "/")
(DEST #ApplicationDir)
(HELP @copyfiles-help)
(OPTIONAL <force>)
(ALL)
(INFOS)
)
(STARTUP #ApplicationName
(SET #dummy (cat "Path add Path " #ApplicationDir))
(HELP @startup-help)
(PROMPT (#startup-prompt #ApplicationName #dummy))
;(COMMAND #dummy)
)
(exit (quiet))
)
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; Ask for Catalogs
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_AskCatalogs #Language
(SET #Dummy (ASKOPTIONS
(PROMPT #App-Language)
(HELP #App-Language-help)
(CHOICES
"English"
"Deutsch")
(DEFAULT #Language)
)
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; Copy Selected Catalogs
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_CopyCatalogs #Language
(SET n 0)
(SET #DestinationRoot (TACKON #ApplicationDir "Catalogs"))
(SET #SourceRoot (TACKON #ArchiveDir "Catalogs"))
(MAKEDIR #DestinationRoot)
(while (< n 2)
(SET #Dummy (SELECT n "english" "deutsch"))
(
(IF (IN #Language n)
(
(MAKEDIR (TACKON #DestinationRoot #Dummy))
(COPYFILES
(SOURCE (TACKON #SourceRoot #Dummy))
(DEST (TACKON #DestinationRoot #Dummy))
(HELP @copyfiles-help)
(ALL)
)
)
)
)
(SET n (+ n 1))
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; Ask for docs
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_AskDocs #Documents
(SET #Dummy (ASKOPTIONS
(PROMPT #App-Docs)
(HELP @askoptions-help)
(CHOICES
"english"
"deutsch"
)
(DEFAULT #Documents)
)
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; Copy docs
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_CopyDocs #Documents
(SET n 0)
(SET #DestinationRoot (TACKON #ApplicationDir "Docs"))
(SET #SourceRoot (TACKON #ArchiveDir "Docs"))
(MAKEDIR #DestinationRoot)
(while (< n 2)
(SET #Dummy (SELECT n
"english"
"deutsch"
)
)
(
(IF (IN #Documents n)
(
(MAKEDIR (TACKON #DestinationRoot #Dummy))
(COPYFILES
(SOURCE (TACKON #SourceRoot #Dummy))
(DEST (TACKON #DestinationRoot #Dummy))
(HELP @copyfiles-help)
(INFOS)
(ALL)
)
)
)
)
(SET n (+ n 1))
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; Copy_Dir (Dir)
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_CopyDir #Dummy
(SET #DestinationRoot (TACKON #ApplicationDir #Dummy))
(SET #SourceRoot (TACKON #ArchiveDir #Dummy))
(MAKEDIR #DestinationRoot)
(COPYFILES
(SOURCE #SourceRoot)
(DEST #DestinationRoot)
(HELP @copyfiles-help)
(OPTIONAL <force>)
(ALL)
(INFOS)
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; Copy_File (Name)
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_CopyFile #Dummy
(COPYFILES
(SOURCE (TACKON #ArchiveDir #Dummy))
(DEST #ApplicationDir)
(HELP @copyfiles-help)
(OPTIONAL <force>)
(ALL)
(INFOS)
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; GetApplicationDir
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_GetApplicationDir #Dummy
(SET #ApplicationDir
(TACKON
(ASKDIR
(PROMPT (#App-Where #ApplicationName))
(HELP @askdir-help)
(default #Dummy)
)
#ApplicationName
)
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; P_Update
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_Update
(if (= (exists #ApplicationDir) 2)
(message (#App-Update #ApplicationName #ApplicationName #ApplicationName))
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; P_AskBinary
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_AskBinary
(set #Dummy (/ (getversion) 65536))
(if (= #Dummy 37) (set #Binary 0))
(if (= #Dummy 38) (set #Binary 1))
(if (> #Dummy 38) (set #Binary 2))
(set #Binary (askchoice
(prompt (#App-Main #ApplicationName))
(help (#App-Main-help #ApplicationName))
(choices
"OS2.0+"
"OS2.1+"
"OS3.0+"
)
(default #Binary)
)
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; P_CopyBinary
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_CopyBinary #Dummy
(set #BinaryName (SELECT #Binary #Dummy (CAT "Bin/" #Dummy "_OS21") (CAT "Bin/" #Dummy "_OS30")))
(copyfiles
(source (tackon #ArchiveDir #BinaryName) (infos))
(dest #ApplicationDir)
(newname #Dummy)
(help @copyfiles-help)
(optional <force>)
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; P_KeyFile
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_KeyFile
(SET #Dummy (tackon (tackon #ArchiveDir "Keyfile") #ApplicationKeyfile))
(if (<> (exists #Dummy (noreq)) 0) ((P_CopyDir "KeyFile"))
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; P_CopyArchiveIcon
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_CopyArchiveIcon
(COPYFILES
(SOURCE (CAT (CAT (TACKON #ArchiveDir "/") #ApplicationName) ".info"))
(DEST (TACKON #ApplicationDir "/"))
(HELP @copyfiles-help)
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; MAIN
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(P_Requirements)
(message (#App-installmsg #ApplicationName #ApplicationName #ApplicationName #ApplicationName))
(welcome)
(SET #ApplicationDir (P_GetApplicationDir #ApplicationDir))
(COMPLETE 1)
(P_Update)
(SET #Binary (P_AskBinary))
(COMPLETE 2)
(SET #Language (P_AskCatalogs #Language))
(COMPLETE 3)
(SET #Documents (P_AskDocs #Documents))
(COMPLETE 4)
;***** Delete old Data and Prefs
(MAKEDIR #ApplicationDir (INFOS))
(DELETE (TACKON #ApplicationDir "BoulderDäsh.prefs"))
(DELETE (TACKON #ApplicationDir "Games/BDash_I.Game"))
(DELETE (TACKON #ApplicationDir "Scores/BDash_I.Game"))
(DELETE (TACKON #ApplicationDir "Graphics/ClassicAmiga.fnt"))
(DELETE (TACKON #ApplicationDir "Docs") (all))
(COMPLETE 10)
(P_CopyDir "Games")
(COMPLETE 40)
(P_CopyDir "Caves")
(COMPLETE 45)
(P_CopyDir "SampleSets")
(COMPLETE 65)
(P_CopyDir "Title")
(COMPLETE 70)
(P_CopyDir "Scores")
(COMPLETE 80)
(P_CopyDir "Graphics")
(COMPLETE 90)
(P_CopyDir "Fonts")
(COMPLETE 95)
(P_CopyBinary #ApplicationName)
(P_CopyFile (CAT #ApplicationName ".info"))
(P_CopyCatalogs #Language)
(P_CopyDocs #Documents)
(P_CopyArchiveIcon)
(P_CopyFile "BoulderDäsh.info")
(P_CopyFile "Docs.info")
(P_CopyFile "Fonts.info")
(P_CopyFile "Graphics.info")
(P_Keyfile)
(COMPLETE 100)
;(exit #App-exit)