home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1998 #3 / amigamamagazinepolishissue1998.iso / bazy / videomaxe446 / installvm < prev    next >
Text File  |  1995-04-23  |  28KB  |  796 lines

  1. ; $VER: InstallVM 03.41 (23 Apr 1995) © Stephan Sürken
  2.  
  3. ; ----------------------
  4. ; TEXTS INITILIZATION
  5.  
  6. ; all texts in a row: 1st english default, then all other langs
  7.  
  8. ; TEXTS
  9.  
  10. (set startupMessage (cat "\n\nInstaller script for VideoMaxe 04.45+\n\n"
  11.                          "VideoMaxe is ShareWare (see documentation)!\n\n"
  12.                          "© Stephan Sürken 1993-1995"))
  13. (if (= @language "deutsch") (
  14. (set startupMessage (cat "\n\nInstaller Skript für VideoMaxe 04.45+\n\n"
  15.                          "VideoMaxe ist ShareWare (siehe Dokumentation)!\n\n"
  16.                          "© Stephan Sürken 1993-1995"))))
  17.  
  18. ; yes
  19.  
  20. (set yesTxt "Yes")
  21. (if (= @language "deutsch") ((set yesTxt "Ja")))
  22.  
  23. ; no
  24.  
  25. (set noTxt "No")
  26. (if (= @language "deutsch") ((set noTxt "Nein")))
  27.  
  28. ; minorUpdate
  29.  
  30. (set minorUpdateTxt "Minor update")
  31. (if (= @language "deutsch") ((set minorUpdateTxt "Kleines Update")))
  32.  
  33. ; newInstallation
  34.  
  35. (set newInstallationTxt "New installation")
  36. (if (= @language "deutsch") ((set newInstallationTxt "Neuinstallation")))
  37.  
  38. ; updateFiles
  39.  
  40. (set updateFilesTxt "Update data files")
  41. (if (= @language "deutsch") ((set updateFilesTxt "Daten-Dateien updaten")))
  42.  
  43. ; all versions with file format changes to current version
  44.  
  45. (set vm3XXTxt "VideoMaxe 03.XX")
  46. (set vm420Txt "VideoMaxe 04.20")
  47. (set vm430Txt "VideoMaxe 04.30")
  48.  
  49. ; all (6) file types
  50.  
  51. (set projectFileTxt "project file")
  52. (if (= @language "deutsch") ((set projectFileTxt "Projekt-Datei")))
  53.  
  54. (set maskListFileTxt "mask list file")
  55. (if (= @language "deutsch") ((set maskListFileTxt "Maskenlisten-Datei")))
  56.  
  57. (set vRecFileTxt "video recorder file")
  58. (if (= @language "deutsch") ((set vRecFileTxt "Videorekorder-Datei")))
  59.  
  60. (set prtPrefsFileTxt "printer preferences file")
  61. (if (= @language "deutsch") ((set prtPrefsFileTxt "Drucker-Einstellungen-Datei")))
  62.  
  63. (set vmPrefsFileTxt "VideoMaxe preferences file")
  64. (if (= @language "deutsch") ((set vmPrefsFileTxt "VideoMaxe-Einstellungen-Datei")))
  65.  
  66. (set loPrefsFileTxt "layout preferences file")
  67. (if (= @language "deutsch") ((set loPrefsFileTxt "Layout-Einstellungen-Datei")))
  68.  
  69.  
  70. ; HELPS
  71.  
  72. ; steps
  73.  
  74. (set stepsHelp
  75.      (cat "\n"
  76.           "This window lets you choose the steps this script should "
  77.           "perform. It can be used for four main purposes:\n\n"
  78.           "o STEP 0: accomplish a minor update\n"
  79.           "o STEP 1: accomplish a complete new installation\n"
  80.           "o STEP 2: update older VideoMaxe files\n\n"
  81.           " You can freely choose which steps should actually be "
  82.           "performed, except that steps 0 and 1 mutually exclude "
  83.           "themselves.\n\n"
  84.           "Explanation of the steps:\n\n"
  85.           "o STEP 0: Will only copy the VideoMaxe program file, "
  86.           "the new documentation files and the language "
  87.           "localization files. With this variant, some new environmental "
  88.           "features of the new release (like even better icons, even "
  89.           "better example files, etc.) may stay invisible, but you "
  90.           "maintain your used installation. Note that you possibly -- "
  91.           "exactly then, when there have been file format changes "
  92.           "with this new release (see Docs.) -- have to update (some "
  93.           "of) your data files using step 2.\n\n"
  94.           "o STEP 1: Will accomlish a complete new installation "
  95.           "of VideoMaxe. Use this if you are a new user (or "
  96.           "updating from the 3.XX version).\n"
  97.           "Choose this too if you are not sure what to select, "
  98.           "as this will in any case produce a runable installation "
  99.           "of the new version.\n"
  100.           "o STEP 2: Lets you update VideoMaxe files of (all) "
  101.           "older versions. You need this only if there have been "
  102.           "file format changes with this release (compared to your "
  103.           "now-installed version). If you are not sure however, "
  104.           "simply try if you can still load the old files with "
  105.           "the new installed VideoMaxe -- if you can't, just re-run "
  106.           "this script and update!\n\n"))
  107.  
  108. (if (= @language "deutsch") (
  109. (set stepsHelp
  110.      (cat "\n"
  111.           "Mit diesem Fenster können Sie wählen, welche Schritte "
  112.           "Sie mit diesem Script ausführen wollen. Folgende Schritte "
  113.           "sind wählbar:\n\n"
  114.           "o SCHRITT 0: 'kleines' Update durchführen\n"
  115.           "o SCHRITT 1: komplette Neuinstallation\n"
  116.           "o SCHRITT 2: alte VideoMaxe-Dateien updaten\n\n"
  117.           " Sie können frei beliebige Schritte wählen, die dann "
  118.           "tasächlich ausgeführt werden (lediglich Schritt 0 und 1 "
  119.           "schließen sich gegenseitig aus).\n\n"
  120.           "Erklärung der einzelnen Schritte:\n\n"
  121.           "o SCHRITT 0: Nur die VideoMaxe-Programm-Datei, "
  122.           "die neuen Dokumentationsdateien und die "
  123.           "Sprachbeschreibungsdateien (VideoMaxe.catalog-files) "
  124.           "werden kopiert. Bei diese Variante können zwar "
  125.           "Umgebungs-'Features' der neuen Release (z.B. neue, noch "
  126.           "tollere Ikonen, neue, noch tollere Beispieldateien, etc.) "
  127.           "verlorengehen, sie behalten aber Ihre 'gewohnte' "
  128.           "Installation bei. Beachten Sie, daß Sie -- wenn sich Datei-"
  129.           "Formate geändert haben (siehe Dok.) -- dann anschließend "
  130.           "noch Schritt (2) durchführen sollten.\n"
  131.           "o SCHRITT 1: Führt eine vollständige Neuinstallation von "
  132.           "VideoMaxe durch. Benutzen Sie diese Variante, wenn Sie ein "
  133.           "neuer Benutzer sind (oder von 3.XX-Versionen von VideoMaxe "
  134.           "updaten).\n"
  135.           "Wählen Sie diese Variante auch, wenn Sie nicht sicher "
  136.           "sind, was Sie wählen sollen -- Sie erhalten am Ende "
  137.           "in jedem Fall eine lauffähige Installation.\n"
  138.           "o SCHRITT 2: Mit diesem Schritt können Sie Dateien von "
  139.           "(allen!) älteren Versionen von VideoMaxe auf das Format "
  140.           "der aktuellen Version bringen. Dies ist natürlich nur "
  141.           "notwendig, wenn die Dateiformate sich mit der jetzt zu "
  142.           "installierenden Version geändert habe (siehe Dok.). Sind "
  143.           "Sie -warum auch immer- nicht sicher, probieren Sie einfach "
  144.           "aus, ob Sie Ihre Dateien vom neu installierten VideoMaxe "
  145.           "noch laden können -- wenn nicht, einfach diese Skript "
  146.           "erneut starten und Dateien updaten!\n\n"))))
  147.  
  148.  
  149. ; destDirHelp
  150.  
  151. (set destDirHelp
  152.      (cat "\n"
  153.           "Into the directory you choose here all files "
  154.           "important for VideoMaxe are placed during the "
  155.           "installation procedure.\n"
  156.           "Note that this directory must be empty, so "
  157.           "normally you will create a new directory at "
  158.           "this point.\n\n"))
  159.  
  160. (if (= @language "deutsch") (
  161. (set destDirHelp
  162.      (cat "\n"
  163.           "In das hier zu wählende Verzeichnis werden während "
  164.           "der Installation alle zu VideoMaxe gehörenden Dateien "
  165.           "plaziert (mit evtl. einigen Ausnahmen).\n"
  166.           "Beachten Sie, daß das Verzeichnis leer sein muß. Im "
  167.           "Normalfall sollten Sie hier also ein neues Verzeichnis "
  168.           "anlegen.\n\n"))))
  169.  
  170.  
  171. ; langHelp
  172.  
  173. (set langHelp
  174.      (cat "\n"
  175.           "Since OS 2.1, the Amiga can operate in different "
  176.           "languages if the application supports them. VideoMaxe "
  177.           "up to now supports English (as default, `built-in` "
  178.           "language), German (Deutsch) and French (Français).\n"
  179.           "Simply check the languages you want VideoMaxe to "
  180.           "support.\n\n"))
  181.  
  182. (if (= @language "deutsch") (
  183. (set langHelp
  184.      (cat "\n"
  185.           "Seit OS 2.1 kann der Amiga in mehreren Sprachen operieren, "
  186.           "wenn die entsprechende Applikation dies unterstützt. "
  187.           "VideoMaxe unterstützt zur Zeit die Sprachen Englisch (ist "
  188.           "'eingebaut', braucht also nicht installiert zu werden), "
  189.           "Deutsch und Französisch.\n"
  190.           "Wählen Sie einfach alle Sprachen aus, die Sie mit VideoMaxe "
  191.           "benutzen wollen.\n\n"))))
  192.  
  193. ; exampleFilesHelp
  194.  
  195. (set exampleFilesHelp
  196.      (cat "\n"
  197.           "VideoMaxe comes with various example files:\n\n"
  198.           "`Projects' contains example project files.\n "
  199.           "`MaskList' contains example mask list files.\n "
  200.           "`PrtPrefs' contains example printer preferences files.\n "
  201.           "`VideoRecorder' contains example video recorder files.\n\n"))
  202.  
  203. (if (= @language "deutsch") (
  204. (set exampleFilesHelp
  205.      (cat "\n"
  206.           "VideoMaxe kommt mit einigen Beispieldateien:\n\n"
  207.           "`Projects' enthält Beispiele für Projekte.\n"
  208.           "`MaskList' enthält Beispiele für Masken(listen).\n"
  209.           "`PrtPrefs' enthält Beispiele für Drucker-Voreinstellungen.\n"
  210.           "`VideoRecorder' enthält Beispiele für Videorekorder.\n\n"))))
  211.  
  212. ; docsHelp
  213.  
  214. (set docsHelp
  215.      (cat "\n"
  216.           "All files listed here exist in a <name>.txt (text file) "
  217.           "and a <name>.guide (hypertext file) version.\n\n"
  218.           "The file names are:\n\n"
  219.           "o Manual\n"
  220.           "    Includes often changing/environmental information and "
  221.           "is therefore in English only.\n\n"
  222.           "o Documentation_X\n"
  223.           "    The proper documentation. X stands for an abbreviation "
  224.           "for a language (e.g. X=E => language=English). These "
  225.           "hypertext files can be used for the online help in VideoMaxe.\n\n"
  226.           " Simply choose the files you want to be installed.\n\n"))
  227.  
  228. (if (= @language "deutsch") (
  229. (set docsHelp
  230.      (cat "\n"
  231.           "Alle hier aufgelisteten Dateien existieren in einer "
  232.           "<Name>.txt (Textdatei) und einer <Name>.guide (Hypertext"
  233.           "datei) Version.\n\n"
  234.           "Die Dateinamen sind:\n\n"
  235.           "o Manual\n"
  236.           "    Enthält sich öfter ändernde/umgebende Informationen und "
  237.           "existiert daher nur in Englisch.\n\n"
  238.           "o Documentation_X\n"
  239.           "    Die eigentliche Dokumentation. X steht für eine Abkürzung "
  240.           "einer Sprache (z.B. X=D => Sprache=Deutsch). Diese Hypertext"
  241.           "dateien können in VideoMaxe als Online-Hilfe verwendet werden.\n\n"
  242.           " Wählen Sie einfach die von Ihnen gewünschten Dateien aus!\n\n"))))
  243.  
  244. ; amigaguideHelp
  245.  
  246. (set amigaguideHelp
  247.      (cat "\n"
  248.           "Though VideoMaxe is runable without the amigaguide library, "
  249.           "you should install it to be able to use the online help of "
  250.           "VideoMaxe.\n\n"))
  251.  
  252. (if (= @language "deutsch") (
  253. (set amigaguideHelp
  254.      (cat "\n"
  255.           "Obwohl VideoMaxe auch ohne die AmigaGuide-Library läuft, "
  256.           "sollten Sie sie installieren, um die Online-Hilfe von "
  257.           "VideoMaxe nutzen zu können.\n\n"))))
  258.  
  259.  
  260. ; updateFilesHelp
  261.  
  262. (set updateFilesHelp
  263.      (cat "\n"
  264.           "If you have worked with former versions of VideoMaxe "
  265.           "and there have been file format changes, you won't want "
  266.           "to loose the data of these old files.\n"
  267.           "Thus, you have to update these files to the new formats.\n"
  268.           "This task is done by the CLI-Tool `VMConvert', shipped "
  269.           "with every release of VideoMaxe in the `Tools' directory; "
  270.           "to not let you nimble around with that Tool you can "
  271.           "comfortably update old files with this script!! "
  272.           "Simply choose the old file types you want to update; "
  273.           "you will then be asked for source and destination "
  274.           "file names.\n"
  275.           "This procedure won't do no harm as it will only convert "
  276.           "to non-existent destination files.\n\n"))
  277.  
  278. (if (= @language "deutsch") (
  279. (set updateFilesHelp
  280.      (cat "\n"
  281.           "Wenn Sie schon mit älteren Versionen von VideoMaxe "
  282.           "gearbeitet haben und Dateiformat-Änderungen haben "
  283.           "von dieser bis zur aktuellen Version stattgefunden, "
  284.           "so müssen Sie Ihre alten Dateien 'auf den neuesten "
  285.           "Stand bringen', um diese Daten weiter nutzen zu können. "
  286.           "Genau dies wird hier gemacht.\n"
  287.           "Diese Aufgabe wird von dem CLI-Werkzeug `VMConvert' "
  288.           "übernommen. Damit Sie nicht damit rumtüfteln müssen, "
  289.           "können Sie diese Umwandlungen komfortabel mit diesem "
  290.           "Skript vornehmen.\n"
  291.           "Wählen Sie einfach die Datei-Typen, die Sie auf den "
  292.           "neuesten Stand bringen wollen; Sie werden dann nach "
  293.           "Quell- und Zieldatei gefragt.\n"
  294.           "Diese Prozedur wird keinen Schaden anrichten, da die "
  295.           "Zieldatei noch nicht existieren darf (es wird also "
  296.           "nichts überschrieben...).\n\n"))))
  297.  
  298. ; V3XXUpdateHelp
  299.  
  300. (set V3XXUpdateHelp
  301.      (cat "\n"
  302.           "Here you are updating files from the 3.XX version "
  303.           "to the format of the current version of VideoMaxe.\n\n"))
  304.  
  305. (if (= @language "deutsch") (
  306. (set V3XXUpdateHelp
  307.      (cat "\n"
  308.           "Hier bringen Sie Dateien von VideoMaxe 03.XX "
  309.           "auf den neuesten Stand.\n\n"))))
  310.  
  311. ; V420UpdateHelp
  312.  
  313. (set V420UpdateHelp
  314.      (cat "\n"
  315.           "Here you are updating files from the 4.00-4.20 versions "
  316.           "to the format of the current version of VideoMaxe.\n\n"))
  317.  
  318. (if (= @language "deutsch") (
  319. (set V420UpdateHelp
  320.      (cat "\n"
  321.           "Hier bringen Sie Dateien von den 04.00-04.20 Versionen "
  322.           "von VideoMaxe auf den neuesten Stand.\n\n"))))
  323.  
  324. ; V430UpdateHelp
  325.  
  326. (set V430UpdateHelp
  327.      (cat "\n"
  328.           "Here you are updating files from the 4.30-4.33 versions "
  329.           "to the format of the current version of VideoMaxe. Only "
  330.           "video recorder and project files have changed, so only "
  331.           "these files can be updated here...\n\n"))
  332.  
  333. (if (= @language "deutsch") (
  334. (set V430UpdateHelp
  335.      (cat "\n"
  336.           "Hier bringen Sie Dateien von den 04.30-04.33 Versionen "
  337.           "von VideoMaxe auf den neuesten Stand. Nur die Videorekorder- "
  338.           "und Projektdateien haben sich geändert, also können Sie auch "
  339.           "hier nur diese Dateien updaten...\n\n"))))
  340.  
  341.  
  342. ; MESSAGES
  343.  
  344. (set stepZeroMes (cat "\n\n" minorUpdateTxt))
  345. (set stepOneMes (cat "\n\n" newInstallationTxt))
  346. (set stepTwoMes (cat "\n\n" updateFilesTxt))
  347.  
  348. (set romBelow37Mes "\nYour Kickstart version is below V37 (2.04). Sorry, but VideoMaxe won't run on your machine!")
  349. (if (= @language "deutsch") (
  350. (set romBelow37Mes "\nSie haben eine Kickstart version kleiner V37 (2.04). Sorry, but VideoMaxe wird so nicht laufen!")))
  351.  
  352. (set noLocaleDirMes "\nYou have no LOCALE: directory; will copy catalogs to program directory!")
  353. (if (= @language "deutsch") (
  354. (set noLocaleDirMes "\nSie haben kein LOCALE: Verzeichnis; die Katalog-Dateien werden in das Programmverzeichnis kopiert!")))
  355.  
  356. (set convertDestFileExistMes "\nCan't convert: Destination file already exists!")
  357. (if (= @language "deutsch") (
  358. (set convertDestFileExistMes "\nKann nicht konvertieren: Zieldatei existiert bereits!")))
  359.  
  360. (set mutualExcludingStepsMes "\nYou must not choose step 0 AND step 1!")
  361. (if (= @language "deutsch") (
  362. (set mutualExcludingStepsMes "\nSie dürfen Schritt 0 und 1 nicht zusammen wählen!")))
  363.  
  364. (set dirNotAvailableMes "\nSpecified directory does not exist!")
  365. (if (= @language "deutsch") (
  366. (set dirNotAvailableMes "\nGewähltes Verzeichnis existiert nicht!")))
  367.  
  368. (set dirNotEmptyMes "\nSpecified directory is not empty!")
  369. (if (= @language "deutsch") (
  370. (set dirNotEmptyMes "\nGewähltes Verzeichnis ist nicht leer!")))
  371.  
  372.  
  373. ; PROMPTS
  374.  
  375. (set chooseLangsPrompt "Please choose languages you want to use with VideoMaxe:")
  376. (if (= @language "deutsch") (
  377. (set chooseLangsPrompt "Bitte wählen Sie die Sprachen, die Sie mit VideoMaxe benutzen wollen:")))
  378.  
  379. (set chooseDocFilesPrompt "Please choose documentation files to be copied:")
  380. (if (= @language "deutsch") (
  381. (set chooseDocFilesPrompt "Bitte wählen Sie die zu kopierenden Dokumentationsdateien:")))
  382.  
  383. (set installingAGPrompt "Installation of the amigaguide library")
  384. (if (= @language "deutsch") (
  385. (set installingAGPrompt "Installation der AmigaGuide-Library")))
  386.  
  387. (set chooseOldVMFilePrompt "Please choose the old file of type:\n")
  388. (if (= @language "deutsch") (
  389. (set chooseOldVMFilePrompt "Bitte wählen Sie eine alte Datei vom Typ:\n")))
  390.  
  391. (set chooseNewVMFilePrompt "Please choose a name for the new version of your file of type:\n")
  392. (if (= @language "deutsch") (
  393. (set chooseNewVMFilePrompt "Bitte wählen Sie eine Namen für die neue Version Ihrer Datei vom Typ:\n")))
  394.  
  395. (set goOnUpdatingPrompt "\nUpdate more files of that type?\n")
  396. (if (= @language "deutsch") (
  397. (set goOnUpdatingPrompt "\nMehr Dateien dieses Typs updaten?\n")))
  398.  
  399. (set chooseStepsPrompt "Choose steps to be performed:")
  400. (if (= @language "deutsch") (
  401. (set chooseStepsPrompt "Bitte wählen Sie die auszuführenden Schritte:")))
  402.  
  403. (set chooseOldVMDirPrompt "Please specify the directory you have VideoMaxe installed in:")
  404. (if (= @language "deutsch") (
  405. (set chooseOldVMDirPrompt "Bitte geben Sie das Verzeichnis an, in dem VideoMaxe derzeit installiert ist:")))
  406.  
  407. (set chooseNewVMDirPrompt "Please choose a directory VideoMaxe should be installed into (must be empty):")
  408. (if (= @language "deutsch") (
  409. (set chooseNewVMDirPrompt "Bitte wählen Sie ein Verzeichnis, in das VideoMaxe installiert werden soll (muß leer sein):")))
  410.  
  411. (set chooseExampleFilesPrompt "Please choose the example files to be copied:")
  412. (if (= @language "deutsch") (
  413. (set chooseExampleFilesPrompt "Bitte wählen Sie die zu kopierenden Beispieldateien:")))
  414.  
  415. (set installStartupPrompt "The logical device VM: is only needed to be assigned on the system's startup if you want to start VideoMaxe by clicking on project icons. Should I change your system's startup?")
  416. (if (= @language "deutsch") (
  417. (set installStartupPrompt "Das logische Verzeichnis VM: muß nur dann beim System-Start angelegt werden, wenn Sie VideoMaxe durch Anklicken von Projekt-Ikonen starten wollen. Soll ich Ihren System-Startup ändern?")))
  418.  
  419. (set chooseFileTypesToUpdatePrompt "Please choose file types to update to current version:")
  420. (if (= @language "deutsch") (
  421. (set chooseFileTypesToUpdatePrompt "Bitte wählen Sie die Dateitypen, die Sie updaten wollen:")))
  422.  
  423.  
  424. ; PROCEDURES
  425. ;------------------
  426. (PROCEDURE CopyCats
  427. ; ARGS: destDir
  428.  
  429. (if (NOT (exists "LOCALE:"))            ; `LOCALE:' THERE?
  430.      ((message noLocaleDirMes)
  431.       (set catDest (tackon destDir "Catalogs"))        ; NO: Copy to program dir
  432.      )
  433.      ((set catDest ("LOCALE:Catalogs"))            ; YES: Copy to LOCALE:
  434.      )
  435. ) ; fi
  436.  
  437. (makedir catDest); maybe existent
  438. (copyfiles (prompt chooseLangsPrompt)
  439.            (source "Catalogs")
  440.            (dest catDest)
  441.            (choices "Deutsch"
  442.                     "Français")
  443.            (confirm)
  444.            (help langHelp @copyfiles-help))
  445.  
  446. );ENDPROC CopyCats
  447. ;-----------------
  448.  
  449. ;------------------
  450. (PROCEDURE CopyDocs
  451. ; ARGS: destDir, docsHelp
  452.  
  453. (copyfiles (prompt chooseDocFilesPrompt)
  454.            (source "Docs")
  455.            (dest (tackon destDir "Docs"))
  456.            (choices "Manual.txt"
  457.                     "Manual.guide"
  458.                     "Documentation_E.txt"
  459.                     "Documentation_E.guide"
  460.                     "Documentation_D.txt"
  461.                     "Documentation_D.guide")
  462.            (confirm)
  463.            (infos)
  464.            (noposition)
  465.            (help docsHelp @copyfiles-help))
  466.  
  467. );ENDPROC CopyDocs
  468. ;------------------
  469.  
  470. ;-----------------------
  471. (PROCEDURE ConvertFiles
  472. ; ARGS: fileType,               ; the file type to be converted
  473. ;       sourceFile, destFile,   ; used as dir defaults...
  474. ;       versionUpdateHelp       ; information texts...
  475.  
  476.  
  477. ; CALC PROMPTS
  478. (set sourceFileSpecifyPrompt (cat "NOTE: There MUST not be spaces in the file name!\n"
  479.                                   chooseOldVMFilePrompt fileType))
  480. (set destFileSpecifyPrompt (cat "NOTE: There MUST not be spaces in the file name!\n"
  481.                                 chooseNewVMFilePrompt fileType))
  482.  
  483. ; WHILE
  484. (set ok 1)
  485. (while ok
  486.        ; GET SOURCE
  487.        (set sourceFile (askfile (prompt sourceFileSpecifyPrompt)
  488.                                 (default sourceFile)
  489.                                 (help versionUpdateHelp @askfile-help)))
  490.        ; GET DEST
  491.        (set destFile (askfile (prompt destFileSpecifyPrompt)
  492.                               (default destFile)
  493.                               (help versionUpdateHelp @askfile-help)))
  494.        (if (exists destFile)
  495.            ((message convertDestFileExistMes))
  496.  
  497.            (
  498. ;################
  499.            (set convCom (cat 'Tools/VMConvert >CON:20/20/400/200/VMConvert/CLOSE/WAIT'
  500.                              (' %s "%s" "%s"' fileType sourceFile destFile)))
  501.            (run convCom)
  502. ;################
  503.            )
  504.        )
  505.        (set ok (askbool (prompt goOnUpdatingPrompt)
  506.                         (help ©askbool-help)
  507.                         (choices yesTxt noTxt)))
  508. )
  509.  
  510. );ENDPROC ConvertFiles
  511. ;----------------------
  512.  
  513.  
  514. ;#################
  515. ; START OF SCRIPT
  516. ;#################
  517.  
  518. ; CHECK ROM 2.04
  519.  
  520. (if (< (/ (getversion) 65536) 37) ((abort romBelow37Mes)))
  521.  
  522. ; INITIAL SETTINGS
  523.  
  524. (set steps %010)
  525. (set destDir "Work:VideoMaxe")
  526. (set @default-dest destDir)
  527.  
  528. ; WELCOME OUT THERE!
  529.  
  530. (message startupMessage)
  531. (welcome)
  532.  
  533. ; WHICH STEPS?
  534.  
  535. (set ok 0)
  536. (until ok
  537.        (set steps (askoptions (prompt chooseStepsPrompt)
  538.                               (default steps)
  539.                               (help stepsHelp @askoptions-help)
  540.                               (choices minorUpdateTxt
  541.                                        newInstallationTxt
  542.                                        updateFilesTxt)))
  543.  
  544.        ; STEPS 0 AND 1 SELECTED?
  545.  
  546.        (set ok (NOT (AND (> (IN steps 0) 0) (> (IN steps 1) 0))))
  547.        (if (NOT ok) ((message mutualExcludingStepsMes)))
  548. )
  549.  
  550. (if (IN steps 0)
  551. (
  552. ;====================================
  553. (message stepZeroMes)
  554. ;====================================
  555.  
  556. ; GET DEST DIR
  557.  
  558. (set ok 0)
  559. (until ok
  560.        (set destDir (askdir (prompt chooseOldVMDirPrompt)
  561.                             (default "VM:")
  562.                             (help ©askdir-help)))
  563.        (set ok (exists destDir))                        ; dest dir ok
  564.        (if (NOT ok) (message dirNotAvailableMes))
  565. )
  566. (set @default-dest destDir)
  567.  
  568. ; COPY DOC FILES
  569.  
  570. (CopyDocs)
  571.  
  572. ; COPY LOCALIZATION FILES
  573.  
  574. (CopyCats)
  575.  
  576. ;===================================
  577. ; MINOR UPDATE COMPLETE
  578. ;===================================
  579. ))
  580.  
  581.  
  582. (if (IN steps 1)
  583. (
  584. ;=======================================
  585. (message stepOneMes)
  586. ;=======================================
  587.  
  588. ; GET DEST DIR
  589.  
  590. (set ok 0)
  591. (until ok
  592.        (set destDir (askdir (prompt chooseNewVMDirPrompt)
  593.                             (default "Work:VideoMaxe")
  594.                             (help destDirHelp @askdir-help)))
  595.        (set ok 1)                               ; dest dir ok
  596.        (foreach destDir "#?" (set ok 0))        ; or not? - must be empty!
  597.        (if (NOT ok) (message dirNotEmptyMes))
  598. )
  599. (set @default-dest destDir)
  600.  
  601. ; CREATE DIRS
  602.  
  603. (working "Creating needed sub-directories...")
  604.  
  605. (makedir (tackon destDir "Config"))
  606. (copyfiles (source "Config.info") (dest destDir))
  607. (makedir (tackon destDir "Projects"))
  608. (copyfiles (source "Projects.info") (dest destDir))
  609. (makedir (tackon destDir "MaskLists"))
  610. (copyfiles (source "MaskLists.info") (dest destDir))
  611. (makedir (tackon destDir "PrtPrefs"))
  612. (copyfiles (source "PrtPrefs.info") (dest destDir))
  613. (makedir (tackon destDir "VideoRecorder"))
  614. (copyfiles (source "VideoRecorder.info") (dest destDir))
  615.  
  616. ; COPY CRUCIAL FILES
  617.  
  618. (working "Copying crucial files...")
  619.  
  620. (copyfiles (source "VideoMaxe") (dest destDir) (infos))
  621. (copyfiles (source "AssignVM")  (dest destDir) (infos))
  622. (copyfiles (source "Config")    (dest (tackon destDir "Config")) (infos) (all))
  623.  
  624. ; COPY EXAMPLE FILES
  625.  
  626. (copyfiles (prompt chooseExampleFilesPrompt)
  627.            (source "")
  628.            (dest destDir)
  629.            (choices "Projects"
  630.                     "MaskLists"
  631.                     "PrtPrefs"
  632.                     "VideoRecorder")
  633.            (help exampleFilesHelp @copyfiles-help)
  634.            (confirm)
  635.            (infos))
  636.  
  637. ; COPY DOC FILES
  638.  
  639. (CopyDocs)
  640.  
  641. ; COPY LOCALIZATION FILES
  642.  
  643. (CopyCats)
  644.  
  645. ; COPY AMIGAGUIDE LIBRARY WITH TEST FOR VERSION, CONFIRM
  646.  
  647. (copylib (prompt installingAGPrompt)
  648.          (help amigaguideHelp @copylib-help)
  649.          (source "Tools/amigaguide.library")
  650.          (dest "Libs:")
  651.          (confirm))
  652.  
  653.  
  654. ; SYSTEM STARTUP
  655.  
  656. (startup "VideoMaxe" (prompt installStartupPrompt)
  657.                      (help @startup-help)
  658.                      (command "Assign VM: " destDir))
  659.  
  660. ;=======================================
  661. ; NEW INSTALLATION COMPLETE
  662. ;=======================================
  663. ))
  664.  
  665.  
  666. (if (IN steps 2)
  667. (
  668. ;=====================================
  669. (message stepTwoMes)
  670. ;=====================================
  671.  
  672. ; GET SELECTION
  673.  
  674. (set updates %11000000)
  675. (set updates (askoptions (prompt chooseFileTypesToUpdatePrompt)
  676.                          (default updates)
  677.                          (help updateFilesHelp @askoptions-help)
  678.                          (choices (cat vm3XXTxt " " projectFileTxt)
  679.                                   (cat vm3XXTxt " " vRecFileTxt)
  680.                                   (cat vm420Txt " " projectFileTxt)
  681.                                   (cat vm420Txt " " maskListFileTxt)
  682.                                   (cat vm420Txt " " vRecFileTxt)
  683.                                   (cat vm420Txt " " prtPrefsFileTxt)
  684.                                   (cat vm430Txt " " projectFileTxt)
  685.                                   (cat vm430Txt " " vRecFileTxt))))
  686.  
  687. ; ... SELECTION
  688. ;
  689. ;------
  690. ; V3XX
  691. ;------
  692. (set versionUpdateHelp V3XXUpdateHelp)
  693. ;
  694. (if (IN updates 0)      ; V3XXPROJECT
  695.             (
  696.              ; SET ARGUMENTS
  697.              (set fileType "V3XXPROJECT")
  698.              (set sourceFile "VM:Projekte")
  699.              (set destFile (tackon destDir "Projects"))
  700.  
  701.              (ConvertFiles)
  702.             )
  703. )
  704.  
  705. (if (IN updates 1)      ; V3XXVREC
  706.             (
  707.              ; SET ARGUMENTS
  708.              (set fileType "V3XXVREC")
  709.              (set sourceFile "VM:Treiber")
  710.              (set destFile (tackon destDir "VideoRecorder"))
  711.  
  712.              (ConvertFiles)
  713.             )
  714. )
  715.  
  716. ;
  717. ;------
  718. ; V420
  719. ;------
  720. (set versionUpdateHelp V420UpdateHelp)
  721. ;
  722. (if (IN updates 2)      ; V420PROJECT
  723.             (
  724.              ; SET ARGUMENTS
  725.              (set fileType "V420PROJECT")
  726.              (set sourceFile "VM:Projects")
  727.              (set destFile (tackon destDir "Projects"))
  728.  
  729.              (ConvertFiles)
  730.             )
  731. )
  732. (if (IN updates 3)      ; V420MASKLIST
  733.             (
  734.              ; SET ARGUMENTS
  735.              (set fileType "V420MASKLIST")
  736.              (set sourceFile "VM:MaskLists")
  737.              (set destFile (tackon destDir "MaskLists"))
  738.  
  739.              (ConvertFiles)
  740.             )
  741. )
  742. (if (IN updates 4)      ; V420VREC
  743.             (
  744.              ; SET ARGUMENTS
  745.              (set fileType "V420VREC")
  746.              (set sourceFile "VM:VideoRecorder")
  747.              (set destFile (tackon destDir "VideoRecorder"))
  748.  
  749.              (ConvertFiles)
  750.             )
  751. )
  752. (if (IN updates 5)      ; V420PRTPREFS
  753.             (
  754.              ; SET ARGUMENTS
  755.              (set fileType "V420PRTPREFS")
  756.              (set sourceFile "VM:PrtPrefs")
  757.              (set destFile (tackon destDir "PrtPrefs"))
  758.  
  759.              (ConvertFiles)
  760.             )
  761. )
  762.  
  763. ;
  764. ;------
  765. ; V430
  766. ;------
  767. (set versionUpdateHelp V430UpdateHelp)
  768. ;
  769. (if (IN updates 6)      ; V430PROJECT
  770.             (
  771.              ; SET ARGUMENTS
  772.              (set fileType "V430PROJECT")
  773.              (set sourceFile "VM:Projects")
  774.              (set destFile (tackon destDir "Projects"))
  775.  
  776.              (ConvertFiles)
  777.             )
  778. )
  779. (if (IN updates 7)      ; V430VREC
  780.             (
  781.              ; SET ARGUMENTS
  782.              (set fileType "V430VREC")
  783.              (set sourceFile "VM:VideoRecorder")
  784.              (set destFile (tackon destDir "VideoRecorder"))
  785.  
  786.              (ConvertFiles)
  787.             )
  788. )
  789.  
  790. ;===============================
  791. ; UPDATING COMPLETE
  792. ;===============================
  793. ))
  794.  
  795. (exit)
  796.