; This is the installation script for Midi Performance Manager
; $VER: MPM_Install 2.3 (31.10.93)

(set old_level @user-level)
(set catalogdir "Catalogs/")
(set osversion (/ (getversion) 65536))

(trap 4
	(cat "An error has occured")
)


;========================================================================
; English strings

(set default_lang 2)

(set #bad-kick
	(cat 	"Oh no. What do you want ? You need Kickstart 2.04 (V 37+)"
			"to run MPM. Go and buy it ! Then you can come again."
	)

)

(set #mycopylib-help
	(cat 	"This file is required for a successful installation of MPM. If you "
			"already have a copy of the library, this is perhaps an update "
			"of your file."
			@copylib-help
	)
)

(set #copy-reqtools "Copying reqtools.library to Libs:")

(set #copy-pplib "Copying powerpacker.library to Libs:")

(set #copy-midilib "Copying midi.library to Libs:")

(set #copy-guidelib "Copying amigaguide.library to Libs:")

(set #defaultdest-prompt "Select destination directory")

(set #defaultdest-help
	(cat	"You have to select a directory where MPM and other "
			"files should be copied to."
			@askdir-help
	)
)

(set #which-language
	(cat "\nWhich languages should be installed ?\n"
		 "Currently only the german catalog for MPM is "
         "included but I included the catalog files for "
         " ReqTools and the ReqTools preferences"
	)
)

(set #which-language-help
	(cat	"\nThe Amiga can be operated in many different"
			" languages. If you want ReqTools requesters to"
			" use the same language as the Amiga Workbench"
	  		" then a catalog file must be copied to your"
	  		" system disk for each language supported.\n\n"
	  		"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 #startup-prompt
	(cat "Add EnvArc: assign to  \"S:User-Startup\" ?")
)

(set #startup-help
	(cat "Select YES to insert the assign for SEKD: in the "
         "file S:User-Startup\n" 
	@startup-help	
	)
)

(set #envarc-prompt
	(cat "Please select directory to assign EnvArc: to")
)


;========================================================================
; German strings

(if (= @language "deutsch")
(

(set default_lang 1)

(set #bad-kick
	(cat	"Nein, so geht es nun wirklich nicht. Sie brauchen mindestens "
			 "Kickstart 2.04 (V 37+) zum Betrieb von MPM. Kommen Sie wieder, "
			 "wenn Sie OS 2 installiert haben! "
	)
)

(set #mycopylib-help
	(cat 	"Diese Datei wird zur Installation von MPM bentigt. Falls Sie schon "
			"eine Kopie dieser Datei haben, so ist dies mglicherweise ein Update "
			"der aktuell installierten Datei.\n\n"
			@copylib-help
	)
)

(set #copy-reqtools "Kopiere reqtools.library ins Verzeichnis Libs:")

(set #copy-pplib "Kopiere powerpacker.library ins Verzeichnis Libs:")

(set #copy-midilib "Kopiere midi.library ins Verzeichnis Libs:")

(set #copy-guidelib "Kopiere amigaguide.library ins Verzeichnis Libs:")

(set #defaultdest-prompt "Auswahl des Zielverzeichnisses")

(set #defaultdest-help
	(cat	"Whlen Sie ein Verzeichnis, z.B. auf Ihrer Festplatte, in das "
			"MPM und andere wichtige Dateien kopiert werden soll.\n\n"
			@askdir-help
	)
)

(set #which-language
	(cat "\nWelche Sprachen sollen installiert werden ?\n"
		 "Z.Zt. gibt es nur eine deutsche bersetzung, jedoch "
         "sind alle Katalog-Dateien fr ReqTools und die "
         "Voreinstellungen eingeschlossen.\n"
	)
)


(set #which-language-help
	(cat "\nDer Amiga kann in vielen verschiedenen Sprachen betrieben werden. "
	     "Fr jede verwendete Sprache mssen mehrere Dateien auf Ihre "
    	 "Festplatte kopiert werden.\n\n"
    	 "Um den Platz in Grenzen zu halten, den die Sprachentreiberdateien "
   		 "einnehmen, knnen Sie whlen, nur die Treiber fr bestimmte "
   		 "Sprachen zu installieren.\n\n"
    	 "Klicken Sie einfach die Felder derjenigen Sprachen an, die Sie in "
    	 "Ihrem System verfgbar haben wollen, so da diese Sprachen mit "
		 "einem Hkchen markiert sind.\n\n"
     @askoptions-help
	)
)

(set #startup-prompt
	(cat "EnvArc: Zuweisung in  \"S:User-Startup\" einfgen  ?")
)

(set #startup-help
	(cat "Whlen Sie Ja um Zuweisung in die Datei \"S:User-Startup\" "
		 "einzufgen\n."
	@startup-help	
	)
)

(set #envarc-prompt
	(cat "Whlen Sie Verzeichnis fr EnvArc: Zuweisung.")
)

))

;========================================================================

(
	(if (< (/ (getversion) 65535) 37)
		(abort #bad-kick)
	)
)

(copylib
	(prompt "\n" #copy-reqtools)
	(help #mycopylib-help)
	(source "libs/reqtools.library")
	(dest "LIBS:")
	(confirm)
)

(copylib
	(prompt "\n" #copy-pplib)
	(help #mycopylib-help)
	(source "libs/powerpacker.library")
	(dest "LIBS:")
	(confirm)
)

(copylib
	(prompt "\n" #copy-midilib)
	(help #mycopylib-help)
	(source "libs/midi.library")
	(dest "LIBS:")
	(confirm)
)

(copylib
	(prompt "\n" #copy-guidelib)
	(help #mycopylib-help)
	(source "libs/amigaguide.library")
	(dest "LIBS:")
	(confirm)
)


(
	(set @default-dest
		(askdir
			(prompt #defaultdest-prompt)
			(help #defaultdest-help)
			(default "ram:")
		)
	)

	(set @defdir 		(tackon @default-dest "mpm"))
	(set @SetupDir 		(tackon @defdir "Setups"))
	(set @SetuplistDir 	(tackon @defdir "SetupLists"))
	(set @SynthDir 		(tackon @defdir "Synth"))
	(set @DumpDir 		(tackon @defdir "Dumps"))
	(set @CommandDir    (tackon @defdir "Commands"))
	(set @ARexxDir	 	(tackon @defdir "ARexx"))
	(set @DeutschDir	(tackon @defdir "Deutsch"))
	(set @EnglishDir	(tackon @defdir "English"))
	(set @PrefDir		"sys:prefs")

	(if
		(= (exists "Envarc:") 0)
		(
			(set envdefaultdir
				(askdir
					(prompt #envarc-prompt)
					(help
						""
						@askdir-help
					)
					(default "SYS:")
				)
			)
			(makeassign "EnvArc" envdefaultdir)

			(startup
				"Envarc"
				(prompt #startup-prompt)
				(help #startup-help)
				(command ("Assign EnvArc: %s" envdefaultdir))
			)
		)
	)

	
	(set @envdir "Envarc:MPM")

	(makedir @envdir)
	(makedir @defdir 		(infos))
	(makedir @SetupDir)
	(makedir @SetuplistDir)
	(makedir @SynthDir)
	(makedir @CommandDir)
	(makedir @DumpDir 		(infos))
	(makedir @ARexxDir 		(infos))
	(makedir @DeutschDir 	(infos))
	(makedir @EnglishDir 	(infos))
	(makedir @PrefDir 		(infos))
)
	
(
	(copyfiles (source "Setups")			(dest @SetupDir) 			(all) )
	(copyfiles (source "SetupLists") 		(dest @SetuplistDir) 		(all) )
	(copyfiles (source "Synth") 			(dest @SynthDir) 			(all) )
	(copyfiles (source "Dumps") 			(dest @DumpDir) 			(all) )
	(copyfiles (source "Commands")          (dest @CommandDir)          (all) )
	(copyfiles (source "ARexx") 			(dest @ARexxDir) 			(all) )
	(copyfiles (source "Deutsch") 			(dest @DeutschDir) 			(all) )
	(copyfiles (source "English") 			(dest @EnglishDir) 			(all) )

	(copyfiles (source "MPM")				(dest @defdir) )
	(copyfiles (source "MPM.info")			(dest @defdir) )

	(copyfiles (source "EnvArc") 			(dest @envdir) 				(all) )

	(if (exists @PrefDir)
			(copyfiles (source "Prefs") 	(dest @PrefDir) 			(all) )
	)

	(if (exists "AmigaGuide")
			(copyfiles (source "AmigaGuide")		(dest @defdir))
	)

	(if (exists "AmigaGuide.info")
			(copyfiles (source "AmigaGuide.info")	(dest @defdir))
	)

	(if (exists "help.guide")
			(copyfiles (source "help.guide")	 (dest "S:"))
	)

	(if (exists "mpm.key")
			 (copyfiles (source "mpm.key") 		(dest @envdir))
	)

)



(
	(if (exists "LOCALE:")
	(
		(user 2)
		(set lang (askoptions (prompt #which-language)
									 (help #which-language-help)
									 (choices
										"Deutsch"
										"Dansk"
										"Italiano"
										"Nederlands"
										"Norsk"
										"Espanol"
										"Portugues"
										"Francais"
										"Svenska")
							       (default default_lang)
					)
		)
		(user old_level)

		(set n 0)
		(while (set language (select n
										"deutsch"
										"dansk"
										"italiano"
										"nederlands"
										"norsk"
										"espanol" 
										"portugues"
										"francais"
										"svenska"
										""))
		(
			(if (IN lang n)
			(
				(
					(makedir (cat "LOCALE:Catalogs/" language))
					(copyfiles (source (tackon catalogdir language))
								  (dest (tackon "LOCALE:Catalogs/" language))
								  (all)
				))
			))
			(set n (+ n 1))
		))
	))
)
