;----------------------------------------
; $VER: Install-AmigaUser v2.11 (17/10/93)
;----------------------------------------

(set @default-dest "")
(set @user-level 2)
(set @pretend 0)
(set @abort-button "Interrompi")
(set @language "italiano")
(set vernum (getversion))
(set ver (/ vernum 65536))

(set BadKick
(cat "I programmi inclusi nei dischetti di AmigaUser richiedono Kickstart e Workbench versione 2.04 o superiore per funzionare correttamente.\n"
     "\n\nIl tuo computer risulta equipaggiato con una versione troppo vecchia di sistema operativo per poter installare AmigaUser\n\n - Installazione terminata - "   
))


(if (< ver 37)
        (abort badkick)
)

;----------------
; Settiamo le variabili iniziali
;----------------

(set AUserdisk  "Work:")        ; Destinazione di default
(set @appname   "AmigaUser 9")
(set Disk1name "AmigaUser_9A:")
(set Disk2name "AmigaUser_9B:")
(set VolumeA   "AmigaUser_9A")
(set VolumeB   "AmigaUser_9B")


(welcome "\n\nAmigaUser\n\n"
  "Periodico di didattica per microcomputer\n"
  "Aut. Trib. Milano n. 234 del 15/5/1993\n"
  "Dir. Resp. Syra Rocchi\n\n"
)

(message "\n\n" @appname "\n\n"
  "Periodico di didattica per microcomputer\n"
  "Aut. Trib. Milano n. 234 del 15/5/1993\n\n"
  "Direttore Responsabile: Syra Rocchi\n"
  "Direttore Tecnico: Giancarlo Cairella\n\n"
  "© 1995 L'Agorà S.r.l. - Milano\n\n"

)

;-----------------------------------------------------------------
; Chiediamo all'utente dove vuole installare il cassetto AmigaUser
;-----------------------------------------------------------------



(set AUserdisk
   (askdir (prompt "Scrivi il NOME del disco nel quale\n creare il cassetto " @appname " ?")
   (help
  "AmigaUser deve essere installato su hard disk o su floppy. "
  "E' necessario indicare il NOME del disco o della partizione "
  "desiderata (esempio 'Work:', 'Empty:', 'Vuoto:') e NON il nome del "
  "dispositivo (come 'Df0:' o 'HD0:' etc.). Un cassetto denominato "
  "'AmigaUser' verrà automaticamente creato nella partizione "
  "o nel disco di destinazione specificato."
  "Ricorda di scrivere il nome immediatamente seguito da due punti "
  "e SENZA usare virgolette o altri segni di interpunzione. Batti "
  "RETURN dopo aver scritto il nome."

   )
   (default AUserdisk)
   )
)

(set auserdiskname (substr auserdisk 0 (- (strlen auserdisk) 1 ) ) )

(set auserdrawer "AmigaUser9")

(set auserdest (cat auserdisk auserdrawer))

(askdisk (prompt ("Inserisci il TUO disco destinazione %s nel drive" auserdiskname))
   (help
    "Il programma deve accedere al disco richiesto "
    "per poter decomprimere i file necessari per "
    "l'installazione. Se la richiesta continua ad apparire nonostante "
    "il disco sia presente, significa che non hai digitato "
    "correttamente il NOME del disco destinazione (ricorda che devi digitare il "
    "nome del disco seguito da due punti, ad es. EMPTY:)"
   )
   (dest auserdiskname)
)

(makedir auserdest
     (help @makedir-help)
     (prompt)
     (infos)
)


(askdisk (prompt "Inserisci il disco A di "@appname" in un drive")
     (help
       "Il programma deve accedere al disco richiesto "
       "per poter decomprimere i file necessari per "
       "l'installazione")
     (dest volumeA)
)



(copyfiles
  (source (cat disk1name "C/LHA"))
  (dest "ram:")
)
(copyfiles
  (source (cat disk1name "C/MUCHMORE"))
  (dest "ram:")
)
(copyfiles
  (source (cat disk1name "C/AMIGAGUIDE"))
  (dest "ram:")
)


(run
  (help "Nohelp")
  (prompt "NoPrompt")
  ("RAM:lha -N -wRAM: x %s %s" (cat disk1name "LIBS.LHA") "RAM:")
)

(message
"E' ora necessario installare alcune librerie sul tuo disco di "
"sistema. Se non hai effettuato il boot da hard disk, accertati che il dischetto che hai utilizzato per avviare il "
"computer sia una COPIA del Workbench e NON l'originale, e controlla di "
"avere almeno 100K di spazio libero.\n Installer verificherà "
"l'eventuale presenza di versioni più recenti delle librerie prima di "
"sostituirle con quelle presenti in questo disco e ti chiederà di "
"confermare la sostituzione. Se nel tuo sistema fossero presenti "
"versioni più recenti delle librerie, è consigliabile NON sostituirle.")


(message
"Se il tuo Workbench non dovesse avere spazio sufficiente, occorrerà "
"cancellare alcuni file: accertati di lavorare su una COPIA del disco "
"Workbench ed elimina i programmi di utilizzo meno frequente (come ad "
"esempio quelli contenuti nei cassetti Utilities e Tools) selezionandone "
"l'icona e attivando l'opzione Delete (Cancella) del menu Icone del "
"Workbench. ")


(copylib
  (prompt "Sto per installare la libreria ReqTools")
  (help
    "Il programma sta chiedendo se si vuole installare la libreria "
    "nella directory LIBS: del proprio disco di sistema. Il numero di versione "
    "indicato nella prima riga (Version to install) è quello della libreria "
    "che sta per essere installata. Il numero di versione indicato nella riga successiva "
    "(se presente) è quello della libreria eventualmente già esistente nel vostro disco."
    "Se il secondo numero è superiore al primo NON dovete procedere all'installazione "
    "e potete saltarla clickando sul pulsante 'Skip this part' "
    "(Salta questa sezione)."
    "Se non appare alcun secondo numero, significa che non esiste una versione "
    "precedente nel sistema e potete quindi procedere tranquillamente all'installazione."
  )
  (source "ram:reqtools.library")
  (dest "libs:")
  (confirm)
)

(copylib
  (prompt "Sto per installare la libreria Powerpacker")
  (help
    "Il programma sta chiedendo se si vuole installare la libreria "
    "nella directory LIBS: del proprio disco di sistema. Il numero di versione "
    "indicato nella prima riga (Version to install) è quello della libreria "
    "che sta per essere installata. Il numero di versione indicato nella riga successiva "
    "(se presente) è quello della libreria eventualmente già esistente nel vostro disco."
    "Se il secondo numero è superiore al primo NON dovete procedere all'installazione "
    "e potete saltarla clickando sul pulsante 'Skip this part' "
    "(Salta questa sezione). "
    "Se non appare alcun secondo numero, significa che non esiste una versione "
    "precedente nel sistema e potete quindi procedere tranquillamente all'installazione."
  )

  (source "ram:PowerPacker.library")
  (dest "libs:")
  (confirm)
)

(copylib
  (prompt "Sto per installare la libreria AmigaGuide")
  (help
    "Il programma sta chiedendo se si vuole installare la libreria "
    "nella directory LIBS: del proprio disco di sistema. Il numero di versione "
    "indicato nella prima riga (Version to install) è quello della libreria "
    "che sta per essere installata. Il numero di versione indicato nella riga successiva "
    "(se presente) è quello della libreria eventualmente già esistente nel vostro disco."
    "Se il secondo numero è superiore al primo NON dovete procedere all'installazione "
    "e potete saltarla clickando sul pulsante 'Skip this part' "
    "(Salta questa sezione). "
    "Se non appare alcun secondo numero, significa che non esiste una versione "
    "precedente nel sistema e potete quindi procedere tranquillamente all'installazione."
  )
  (source "ram:AmigaGuide.library")
  (dest "libs:")
  (confirm)
)
(delete "ram:powerpacker.library")
(delete "ram:amigaguide.library")
(delete "ram:reqtools.library")


(message 
  "Ti verrà ora chiesto se vuoi copiare nella directory C: del tuo "
  "disco di sistema alcuni file opzionali: il visualizzatore di testi MUCHMORE (15K) e l'utility ipertestuale "
  "AMIGAGUIDE (7K). La loro installazione non è obbligatoria, ma "
  "vivamente consigliata.  Molti dei programmi richiedono la presenza "
  "Muchmore o AmigaGuide per visualizzare la documentazione inclusa.\n "
  "Per saltare l'installazione, potrai clickare su 'Skip this part' "
  "(Salta questa sezione). ".
)

(copyfiles 
  (prompt "Installazione dei programmi di utilità")
  (help 
    "Il programma sta chiedendo se si vogliono installare alcune utility nel proprio "
    "disco di sistema (il programma di visualizzazione "
    "testi MUCHMORE e l'utility per visualizzare i documenti in formato "
    "AMIGAGUIDE). Puoi decidere quali installare e quali no contrassegnandone "
    "il nome con il mouse. Per saltare completamente l'installazione, clicka "
    "su 'Skip this part'."
  )
  (source "ram:")
  (dest "c:")
  (choices "MUCHMORE" "AMIGAGUIDE")
  (files)
  (optional "nofail")
  (confirm)
)

(delete "ram:muchmore")
(delete "ram:amigaguide")



(set auserdest (cat auserdest "/"))


; -------------------------------


;******************************************************
;* Chiede quali programmi si vogliono installare (default=tutti)
;******************************************************

(set installfrom1
   (askoptions
   (prompt
   @appname " - Disco A\n\n"
   "Fai click con il mouse nei riquadri accanto al nome "
      "dei programmi che desideri installare ")
   (choices     "Doctor Who       (400K)"
       		    "Drop'n'Act 2.0   (145K)"
       			"MuchMore 4.6     (260K)"
       			"VirusScanner 2.4 (282K)")
   (default 0)
    (help
      "Seleziona con il mouse i programmi che vuoi "
      "installare. Soltanto i programmi contrassegnati "
      "verranno copiati nell'unità di destinazione.\n\n"
      "Il numero tra parentesi accanto al nome "
      "indica lo spazio su disco "
      "necessario per contenere il file.\n\n"
      "Se il disco di destinazione è un'unità a floppy "
      "occorrerà fare attenzione che la somma delle "
      "dimensioni dei programmi da installare non superi "
      "800K di lunghezza."
   )
   )
)


(set installfrom2
   (askoptions
   (prompt
      @appname " - Disco B\n\n"
   "Fai click con il mouse nei riquadri accanto al nome "
      "dei programmi che desideri installare ")
    (choices "ArtPro           (185K)"
       		 "Denver Duck      (175K)"
       		 "ShapeShifter 2.0 (335K)"
       		 "Springtime       (488K)"
             "TeleTerm 2.0     (414K)"
			 "Translator 4.2   (131K)")
   (default 0)
   (help
      "Seleziona con il mouse i programmi che vuoi "
      "installare. Soltanto i programmi contrassegnati "
      "verranno copiati nell'unità di destinazione.\n\n"
      "Il numero tra parentesi accanto al nome "
      "indica lo spazio su disco "
      "necessario per contenere il file.\n\n"
      "Se il disco di destinazione è un'unità a floppy "
      "occorrerà fare attenzione che la somma delle "
      "dimensioni dei programmi da installare non superi "
      "800K di lunghezza."

   )
   )
)

(procedure UNLZH

   (
   (working workingMsg)
   (set lzrc    (run ("RAM:Lha -N -wRAM: x %s \"%s\"" arcFileName destDirName)))

   (if (<> lzrc 0)
     (message
     ("Errore durante la decompressione di %s in %s." arcFileName destDirName)
     "\n"
     "Accertati che il disco destinazione abbia "
      "spazio sufficiente per ricevere i file da "
      "installare e riprova.")
   )
   )
)


(procedure DiscoA
  (askdisk (prompt ("Inserisci il disco A di %s nel drive" @appname))
     (help
       "Il programma deve accedere al disco richiesto "
       "per poter decomprimere i file necessari per "
       "l'installazione")
     (dest volumeA)
  )
)

(procedure DiscoB
  (askdisk (prompt ("Inserisci il disco B di %s nel drive" @appname))
     (help
       "Il programma deve accedere al disco richiesto "
       "per poter decomprimere i file necessari per "
       "l'installazione")
     (dest volumeB)
  )
)



; -----------------------------------------------------------------------

(if (IN InstallFrom1 0)
  (
  (set destdirname (cat auserdest "DoctorWho"))
  (makedir (destdirname)
    (infos)
  )
  (set destdirname (cat destdirname "/"))
  (set arcfilename (cat disk1name "DOCTORWHO.LHA"))
  (set workingMsg ("Sto installando %s in %s..." arcfilename destdirname))
  (discoA)
  (UNLZH)
  )

)

(Complete 15)

(if (IN InstallFrom1 1)
  (
  (set destdirname (cat auserdest "DropnAct"))
  (makedir (destdirname)
    (infos)
  )
  (set destdirname (cat destdirname "/"))
  (set arcfilename (cat disk1name "DROPNACT2.LHA"))
  (set workingMsg ("Sto installando %s in %s..." arcfilename destdirname))
  (discoA)
  (UNLZH)
  )

)

(complete 25)

(if (IN installFrom1 2)
  (
  (set destdirname (cat auserdest "MuchMore"))
  (makedir (destdirname)
     (infos)
  )
  (set destdirname (cat destdirname "/"))
  (set arcfilename (cat disk1name "MUCHMORE46.LHA"))
  (set workingMsg ("Sto installando %s in %s..." arcfilename destdirname))
  (discoA)
  (UNLZH)
  )
)

(complete 40)

(if (IN installFrom1 3)
  (
  (set destdirname (cat auserdest "VirusScanner"))
  (makedir (destdirname)
     (infos)
  )
  (set destdirname (cat destdirname "/"))
  (set arcfilename (cat disk1name "VSCAN24.LHA"))
  (set workingMsg ("Sto installando %s in %s..." arcfilename destdirname))
  (discoA)
  (UNLZH)
  )
)


(complete 50)

(if (IN installFrom2 0)
  (
  (set destdirname (cat auserdest "ArtPro"))
  (makedir (destdirname)
     (infos)
  )
  (set destdirname (cat destdirname "/"))
  (set arcfilename (cat disk2name "ARTPRO.LHA"))
  (set workingMsg ("Sto installando %s in %s..." arcfilename destdirname))
  (discoB)
  (UNLZH)
  )
)

(complete 60)

(if (IN installFrom2 1)
  (
  (set destdirname (cat auserdest "DenverDuck"))
  (makedir (destdirname)
     (infos)
  )
  (set destdirname (cat destdirname "/"))
  (set arcfilename (cat disk2name "DENVERDUCK.LHA"))
  (set workingMsg ("Sto installando %s in %s..." arcfilename destdirname))
  (discoB)
  (UNLZH)
  )
)

(complete 70)

(if (IN installFrom2 2)
  (
  (set destdirname (cat auserdest "ShapeShifter"))
  (makedir (destdirname)
     (infos)
  )
  (set destdirname (cat destdirname "/"))
  (set arcfilename (cat disk2name "SHAPESHIFTER.LHA"))
  (set workingMsg ("Sto installando %s in %s..." arcfilename destdirname))
  (discoB)
  (UNLZH)
  )
)

(complete 80)

(if (IN installFrom2 3)
  (
  (set destdirname (cat auserdest "SpringTime"))
  (makedir (destdirname)
     (infos)
  )
  (set destdirname (cat destdirname "/"))
  (set arcfilename (cat disk2name "SpringTime.LHA"))
  (set workingMsg ("Sto installando %s in %s..." arcfilename destdirname))
  (discoB)
  (UNLZH)
  )
)

(complete 90)

(if (IN installFrom2 4)
  (
  (set destdirname (cat auserdest "TeleTerm"))
  (makedir (destdirname)
     (infos)
  )
  (set destdirname (cat destdirname "/"))
  (set arcfilename (cat disk2name "TELETERM.LHA"))
  (set workingMsg ("Sto installando %s in %s..." arcfilename destdirname))
  (discoB)
  (UNLZH)
  )
)

(complete 95)

(if (IN installFrom2 5)
  (
  (set destdirname (cat auserdest "Translator"))
  (makedir (destdirname)
     (infos)
  )
  (set destdirname (cat destdirname "/"))
  (set arcfilename (cat disk2name "TRANSLATOR42.LHA"))
  (set workingMsg ("Sto installando %s in %s..." arcfilename destdirname))
  (discoB)
  (UNLZH)
  )
)


(complete 100)

(message "Operazione terminata. I programmi sono stati installati in "
   auserdest "\n\n"
   "Per qualsiasi problema, ricorda che la redazione è a tua "
   "disposizione per aiutarti: puoi telefonare "
   "ogni MERCOLEDI' POMERIGGIO (dalle 15 alle 18) al numero 02-78.17.17\n\n "
   "Se possiedi un Modem, puoi chiamare BBS2000, la BBS di AmigaUser: "
   "tel. 02-781147 oppure 02-781149 oppure 02-781720 a qualsiasi "
   "velocità da 300 a 19200 baud. "
)

; **** That's all, folks ! ****

(delete "ram:lha")
(exit)

