;**********************************************;
;                                              ;
;     Video Toaster 3.5 Installer              ;
;                                              ;
;             by Todd Hayes                    ;
;           ©1994 NewTek, Inc.                 ;
;                                              ;
; $VER: Video Toaster Installer 3.5 (7-22-94)  ;
;                                              ;
;**********************************************;

(set @appname "Video Toaster 3.5")

(set disk1 "VideoToaster3.5")
(set disk_n "VT3.5_Disk")
(set install_size_3.0 14700000) 
(set install_size_3.1 5400000)

(set temp (cat (getdevice "c:") ":Toaster"))
(set default_dir (if (exists "Work:Toaster" (noreq))
                     "Work:Toaster"
                     (if (exists temp)
                         temp
                         (cat (getdevice "c:") ":"))))
(set chipset (database "chiprev"))

(onerror 
   ((if (exists "ram:lz.decomp")
       (delete "ram:lz.decomp"))))

;************** Help Text **************

(set help_find_toaster (cat "The installer needs to know where your "
                       "current Video Toaster software is installed.  This "
                       "will be a directory called 'Toaster' on one of "
                       "your drives.\n"))

(set help_insert_disk (cat "The Installer needs this disk to be inserted "
                           "to continue the installation process."))

;************** Main **************

(welcome)

(copyfiles (source (cat disk1 ":c"))
           (choices "lz.decomp")
           (dest "ram:"))

(set toast_dir (askdir (prompt (cat "Please locate the directory that "
                                    "your Video Toaster software is in.\n"))
                       (default default_dir)
                       (help help_find_toaster)))

(if (OR (exists (cat toast_dir "/switcher.main"))
        (exists (cat toast_dir "/switcher.main.aa")))
  ((set @default-dest toast_dir)
   (set soft_vers (if (exists (cat toast_dir "/effects/smash"))
                      "3.1"
                      "3.0"))
   (if (= soft_vers "3.0")
       (set install_size install_size_3.0)
       (set install_size install_size_3.1))

   (set toast_vers (if (= soft_vers "3.1")
                       (if (exists (cat toast_dir "/vta2"))
                           "4000"
                           "2000")
                       (if (> (getsize (cat toast_dir "/switcher.main"))
                              490000)
                           "4000"
                           "2000")))
(while (> install_size (getdiskspace toast_dir))
      ((if (NOT @user-level)
           (abort (cat "\nNot enough space on drive to install.\n"
                     "Please free up "
                     (- install_size (getdiskspace toast_dir))
                     " bytes before restarting the Installation.")))
       (message (cat "\nNot enough space on drive to install.\n"
                     "Please free up "
                     (- install_size (getdiskspace toast_dir))
                     " bytes before clicking proceed to continue."))))
   (complete 5)
   (working "\n\nDecompressing files to " toast_dir)
   (set toast_par_dir (substr toast_dir 0 (- (strlen toast_dir) 7)))
   (set @execute-dir toast_par_dir)

   (if (= toast_vers "2000")
       ((run ("ram:lz.decomp -m x %s:VT3.5.2.lha" disk1))
        (if (= soft_vers "3.0")
           ((complete 11)
            (askdisk 
               (prompt "Please insert Video Toaster 3.5 Disk 2 in any drive...")
               (dest (cat disk_n "2"))
               (help help_insert_disk))
            (working "\n\nDecompressing files to " toast_dir)
            (run ("ram:lz.decomp -m x VT3.5_Disk2:VT3.5.1.lha"))
            (run ("ram:lz.decomp -m x VT3.5_Disk2:VT3.5.10.lha")))
        (complete 20)))
       ((if (= chipset "AA")
            ((if (= soft_vers "3.0")
                 (run ("ram:lz.decomp -m x %s:VT3.5.3.lha" disk1)))
             (run ("ram:lz.decomp -m x %s:VT3.5.4.lha" disk1)))
            (run ("ram:lz.decomp -m x %s:VT3.5.6.lha" disk1)))
        (if (= soft_vers "3.0")
           ((complete 11)
            (askdisk 
                (prompt "Please insert Video Toaster 3.5 Disk 2 in any drive...")
                (dest (cat disk_n "2"))
                (help help_insert_disk))
            (working "\n\nDecompressing files to " toast_dir)
            (run ("ram:lz.decomp -m x %s2:VT3.5.10.lha" disk_n))
            (if (NOT (= chipset "AA"))
                (run ("ram:lz.decomp -m x %s2:VT3.5.5.lha" disk_n))))
           (complete 20))))
    (if (= soft_vers "3.0")
       ((complete 22)
        (askdisk 
            (prompt "Please insert Video Toaster 3.5 Disk 3 in any drive...")
            (dest (cat disk_n "3"))
            (help help_insert_disk))
        (working "\n\nDecompressing files to " toast_dir)
        (run ("ram:lz.decomp -m x %s3:VT3.5.7.lha" disk_n))
        (complete 33)
        (askdisk 
            (prompt "Please insert Video Toaster 3.5 Disk 4 in any drive...")
            (dest (cat disk_n "4"))
            (help help_insert_disk))
        (working "\n\nDecompressing files to " toast_dir)
        (run ("ram:lz.decomp -m x %s4:VT3.5.8.lha" disk_n))
        (complete 44)
        (askdisk 
            (prompt "Please insert Video Toaster 3.5 Disk 5 in any drive...")
            (dest (cat disk_n "5"))
            (help help_insert_disk))
        (working "\n\nDecompressing files to " toast_dir)
        (run ("ram:lz.decomp -m x %s5:VT3.5.9.lha" disk_n))))
    (askdisk 
        (prompt "Please insert Video Toaster 3.5 Disk 6 in any drive...")
        (dest (cat disk_n "6"))
        (help help_insert_disk))
        (complete (if (= soft_vers "3.0")
                      55
                      20))
        (working "\n\nDecompressing files to " toast_dir)
    (run ("ram:lz.decomp -m x VT3.5_Disk6:VT3.5.11.lha"))
    (askdisk 
        (prompt "Please insert Video Toaster 3.5 Disk 7 in any drive...")
        (dest (cat disk_n "7"))
        (help help_insert_disk))
        (complete (if (= soft_vers "3.0")
                      66
                      40))
        (working "\n\nDecompressing files to " toast_dir)
    (run ("ram:lz.decomp -m x VT3.5_Disk7:VT3.5.12.lha"))
    (askdisk 
        (prompt "Please insert Video Toaster 3.5 Disk 8 in any drive...")
        (dest (cat disk_n "8"))
        (help help_insert_disk))
        (complete (if (= soft_vers "3.0")
                      77
                      60))
        (working "\n\nDecompressing files to " toast_dir)
   (run ("ram:lz.decomp -m x VT3.5_Disk8:VT3.5.13.lha"))
   (askdisk 
        (prompt "Please insert Video Toaster 3.5 Disk 9 in any drive...")
        (dest (cat disk_n "9"))
        (help help_insert_disk))
   (complete (if (= soft_vers "3.0")
                 88
                 80))
   (working "\n\nDecompressing files to " toast_dir)
   (run ("ram:lz.decomp -m x %s9:VT3.5.14.lha" disk_n))

   (complete 100)
   (if (exists "ram:lz.decomp")
       (delete "ram:lz.decomp")))
  (abort "Sorry, the Toaster software was not found in "
            toast_dir))
