; SecondSpin Installer - Rev0030 - 03/02/2000 ; Install script (C) Kristian Van Der Vliet 1999 ; Additional stuff (C) -zuulikuuli 2000-2001 ; ; Note to anyone reading this: Do not change this script. Do not copy wholesale ; from it. Do not even think about it. Email me (In the docs) if you want some ; help with installer scripts. ; ; Expert users: There is no expert mode. Sorry. Still, i cant think it would get ; much harder as it stands anyway.... ; ; SecondSpin (c) -zuulikuuli (set @app-name (cat "SecondSpin" )) (set #welcome (cat "Welcome to the Installer for SecondSpin.\nInstaller script ©1999 Kristian Van Der Vliet & \n©2000-2001 Lauri Ahonen (Author of SS)\n\nPlease make sure you have obtained both archives!" )) (set @default-dest (cat "Work:" )) (welcome #welcome) ; We need to be sure that Processor archive has been installed too! (set encoderdir (cat "encoders" )) (if (NOT (exists encoderdir)) (MESSAGE "\nUnable to locate MP3 Encoder archive files.\n\nMP3 mode will be disabled!\n\nIf you have an additional encoder executable\nplease copy it to SecondSpin:external_commands/") ) ; First we want a proper destination dir for the main files (set @default-dest (askdir (prompt "Please select a destination directory for the Installation\nof SecondSpin. A directory called SecondSpin will be created there") (help "No help as yet") (newpath) (default "Work:") ) ) (set @default-dest (tackon @default-dest "SecondSpin") ) ; Ask which CPU the user has (set #cpu-version (askchoice (prompt "Please select the CPU version of SecondSpin you would like to install.") (help "In order to provide the best speed when handling MPEG Audio, SecondSpin offers several different executables for different processors. SecondSpin requires FPU") (choices "PPC (PowerUP)" "PPC (WarpOS)" "060 with FPU" "040 with FPU" "030 with FPU" "020 with FPU") )) ; Now we need a few configuration details to set the ENV: labels ; First the device name (set #cd-device (askstring (prompt "Please enter the AmigaDOS device name for your CD-Rom drive.") (help "You should enter the AmigaDOS device name for the interface that your CD-Rom drive is connected to I.E scsi.device") (default "scsi.device") )) ; Now the device unit (set #cd-unit (asknumber (prompt "Please enter the Unit number for your CD-Rom drive.") (help "You should enter the Unit number for your CD-Rom drive. For an IDE/ATAPI drive this may be 0 or 1, SCSI drives will typically be in the range 0-7.") (default 0) (range 0 15) )) ; Finally the CD-Rom type (for cdda_plan) (set #cd-type (askchoice (prompt "Please select your CD-ROM type from the list below.\nNote: If your CD-ROM doesn't work with the selected setting,\nplease reinstall with another type!") (help "The CD-DA ripper that SecondSpin uses works slightly diferently depending on the make of CD-ROM drive. If you have an IDE/ATAPI drive you should select either 'ATAPI' or 'Old ATAPI' from the list. SCSI drive users should consult their manual, but 'ATAPI' might work fine with most SCSI devices.\n\nNote: Not all CD-ROM drives support CD-DA sampling. If you have such a drive, you may find that the Audio CD-DA quality is poor, or the drive gives eratic results when sampling. This is not caused by SecondSpin.") (choices "Sony CDU 8003 and compatible" "Toshiba XM3401TA and compatible" "NEC 2X and 3X" "Some Grundig & Toshiba CD-ROM's" "Standard ATAPI / SCSI" "Old ATAPI" "None of the above") )) ; Do the bits here to check #cd-type and set #cd-plan acordingly (select #cd-type (set #cd-plan "a") (set #cd-plan "b") (set #cd-plan "c") (set #cd-plan "d") (set #cd-plan "e") (set #cd-plan "f") (set #cd-plan "n") ) (set #cdid-path (askdir (prompt "If you've got a CDID library,\nplease specify it's location. Otherwise select default.") (help "No help as yet") (newpath) (default "SecondSpin:disks/") ) ) (set #sid4amiga-version (askchoice (prompt "Please select which cpu version of the SID4AMIGA SID engine\nwould you like to install.") (help "SID4AMIGA (c) Paul Heams.\n\n") (choices "PPC (WarpOS)" "040 with FPU" "020 without FPU") )) ; Now we can start copying our files about ; Make the main dir & copy the files needed. (makedir @default-dest (prompt "Creating directory " @default-dest) (help "No help as yet") (infos) ) ; Now we can copy the remaining main files (copyfiles (source "bin/") (dest @default-dest) ; Copy the main files to the dest-dir (all) (infos) ) (copyfiles (source "") (pattern "SecondSpin.guide#?") (dest @default-dest) ) ;(set #tables-dest ;(cat @default-dest "/mpeg_tables" ; We also need a sub-dir "mpeg_tables" ;)) ;(makedir #tables-dest) ;(copyfiles ; (prompt "Copying the MPEG Tables to " #tables-dest) ; (source "mpeg_tables/") ; (dest #tables-dest) ; (all) ;) ; Do the C: S: and LIBS: files (set #cmd-dest (cat @default-dest "/external_commands" ; We need an external_commands directory )) (set #docs-dest (cat @default-dest "/docs" ; We need a docs directory )) (set #catalogs-dest (cat @default-dest "/Catalogs" ; We need a catalog directory (Now who changed this? Wasn't me, i would have got it right the first time ;) ) )) (set #example-dest (cat @default-dest "/example_files" ; example directory ) )) (makedir #cmd-dest) (makedir #catalogs-dest) (makedir #example-dest) (copyfiles (source "external_commands") (dest #cmd-dest) (pattern "~(#?SID4AMIGA#?|#?PEGASE_#?)") ) (copyfiles (source "example_files") (dest #example-dest) (pattern "#?") ) (copyfiles (source "Catalogs") (dest #catalogs-dest) (all) ) ; Now copy the correct CPU version of the encoder ; Note that this is a little bit neater than the older Installers ;) (set #lamer-dest (cat @default-dest "/external_commands/" )) (if (exists encoderdir) (select #cpu-version ; PPC PowerUP (copyfiles (source "encoders/SecondSpin_encoder.elf") (dest #lamer-dest) (newname "SecondSpin_encoder") ) ; PPC WarpOS (copyfiles (source "encoders/SecondSpin_encoder.wos") (dest #lamer-dest) (newname "SecondSpin_encoder") ) ; 060 (copyfiles (source "encoders/SecondSpin_encoder.060fpu") (dest #lamer-dest) (newname "SecondSpin_encoder") ) ; 040 (copyfiles (source "encoders/SecondSpin_encoder.040fpu") (dest #lamer-dest) (newname "SecondSpin_encoder") ) ; 030 fpu (copyfiles (source "encoders/SecondSpin_encoder.020fpu") (dest #lamer-dest) (newname "SecondSpin_encoder") ) ; 020 fpu (copyfiles (source "encoders/SecondSpin_encoder.020fpu") (dest #lamer-dest) (newname "SecondSpin_encoder") ) ) ) ; copy Pegase (select #cpu-version (copyfiles (source "external_commands/Pegase_PPC") (dest #lamer-dest) (newname "Pegase") ) (copyfiles (source "external_commands/Pegase_PPC") (dest #lamer-dest) (newname "Pegase") ) (copyfiles (source "external_commands/Pegase_060") (dest #lamer-dest) (newname "Pegase") ) (copyfiles (source "external_commands/Pegase_040") (dest #lamer-dest) (newname "Pegase") ) (copyfiles (source "external_commands/Pegase_030") (dest #lamer-dest) (newname "Pegase") ) (copyfiles (source "external_commands/Pegase_030") (dest #lamer-dest) (newname "Pegase") ) ) ; copy sid4amiga (select #sid4amiga-version (copyfiles (source "external_commands/Sid4AmigaWOS") (dest #cmd-dest) (newname "Sid4Amiga") ) (copyfiles (source "external_commands/Sid4Amiga040FPU") (dest #cmd-dest) (newname "Sid4Amiga") ) (copyfiles (source "external_commands/Sid4Amiga020") (dest #cmd-dest) (newname "Sid4Amiga") ) ) ; Now the mpega-libs to libs: (set #mpega-dest (cat "Libs:" )) (set mpegalib (cat "Libs:mpega.library" )) (if (NOT (exists mpegalib)) (select #cpu-version ((copyfiles (source "libs-mpega/mpegaPPC.library") ; PPC (dest #mpega-dest) (newname "mpega.library") ) (copyfiles (source "libs-mpega/mpegappcFPU_library.elf") ; And another PPC library (dest #mpega-dest) (newname "mpega.library.elf") )) (copyfiles (source "libs-mpega/mpega060FPU.library") ; 060 (dest #mpega-dest) (newname "mpega.library") ) (copyfiles (source "libs-mpega/mpega040FPU.library") ; 040 (dest #mpega-dest) (newname "mpega.library") ) (copyfiles (source "libs-mpega/mpega020FPU.library") ; 030 fpu (dest #mpega-dest) (newname "mpega.library") ) ; Note to any 030 users reading this, sorry, but mpega only comes in 020 ; versions, however the SecondSpin_Encoder DOES, so you do have some advantages ; over 020 users... (copyfiles (source "libs-mpega/mpega020FPU.library") ; 020 fpu (dest #mpega-dest) (newname "mpega.library") ) ) ) ; Now the docs (makedir #docs-dest) (copyfiles (source "docs") (dest #docs-dest) (all) ) (copyfiles (source "docs.info") (dest @default-dest) (nogauge) ) ; Now we copy all of the required libs (copylib (source "libs/reqtools.library") (dest "LIBS:") (optional "nofail") (help "No help as of yet.") (prompt "SecondSpin needs reqtools.library.") (confirm) ) (copylib (source "libs/rexxreqtools.library") (dest "LIBS:") (optional "nofail") (help "No help as of yet.") (prompt "SecondSpin needs rexxreqtools.library.") (confirm) ) (copylib (source "libs/rexxtricks.library") (dest "LIBS:") (optional "nofail") (help "No help as of yet.") (prompt "SecondSpin needs rexxtricks.library.") (confirm) ) (copylib (source "libs/triton.library") (dest "LIBS:") (optional "nofail") (help "No help as of yet.") (prompt "SecondSpin needs triton.library.") (confirm) ) (copylib (source "libs/tritonrexx.library") (dest "LIBS:") (optional "nofail") (help "No help as of yet.") (prompt "SecondSpin needs tritonrexx.library.") (confirm) ) (copylib (source "libs/ixemul.library") (dest "LIBS:") (optional "nofail") (help "No help as of yet.") (prompt "SecondSpin mpeg tagging needs ixemul.library.\nThe version included is 68020, soft-float.") (confirm) ) (copylib (source "libs/rmh.library") (dest "LIBS:") (optional "nofail") (help "No help as of yet.") (prompt "SecondSpin needs rmh.library.") (confirm) ) (copylib (source "libs/sndfile.library") (dest "LIBS:") (optional "nofail") (help "No help as of yet.") (prompt "LAME engine requires sndfile.library.\nThe version included is 68020 FPU") (confirm) ) ;(copylib ; (source "libs/2ndspin.library") ; (dest "LIBS:") ; (optional "nofail") ; (help "No help as of yet.") ; (prompt "SecondSpin needs several external libraries.\nAll the required ones ; (confirm) ;) ; Bet it didn't copy that library, did it? ; It'll have to be a filecopy instead, for now. ;(copyfiles ; (source "libs/2ndspin.library") ; (dest "LIBS:") ; (optional "nofail") ; (help "No help as of yet.") ; (prompt "SecondSpin needs several external libraries.\nAll the required ones ; (confirm) ; (nogauge) ;) ; Now create the ENV: labels needed for the CDDA ripper (textfile (dest "ENVARC:cdda_device") (append #cd-device) ) (textfile (dest "ENVARC:cdda_unit") (append #cd-unit) ) (textfile (dest "ENVARC:cdid_path") (append #cdid-path) ) ; Check to see if we need a cd-plan before we set it (if (<> #cd-type 6) (textfile (dest "ENVARC:cdda_plan") (append #cd-plan) ) ) ; Copy the env labels into ENV: to avoid the reboot (copyfiles (source "ENVARC:") (dest "ENV:") (pattern "cdda#?") ) ; Now put the SecondSpin: assign in user-startup (startup "SecondSpin" (prompt "Adding assign to your user-startup sequence") (help "No help as yet.") (command "Assign SecondSpin: " @default-dest" >NIL:") ) ; That's all the work done. Ta da!