home *** CD-ROM | disk | FTP | other *** search
- ; $Id: Install-Patch,v 1.2 93/02/23 12:08:51 lee Exp $
- ;
- ; This is the 4.6 patch install script for DeluxePaint AGA
- ; © 1993 Electronic Arts Inc. All Rights Reserved
- ;
- ; The order in which the user is requested to things is
- ; as follows:
- ;
- ; 1) Input the DPaintIV Install Disk 1
- ; 2) Input a Destination Disk (to clone DPaintIV Install Disk)
- ; 3) Input 4.6 Patch Disk for patch data
- ; 4) Input Destination Disk to receive patched data
- ;
- ; CHANGES BY ASDG:
- ; 93/12/18 - Changed icon settings and volume name to "ADPro_D5".
- ;
- (set @default-dest "Work:")
-
- ; due to a problem with spatch command line parsing, the name of
- ; the patch disk should not contain spaces.
- (set PATCH_NAME "ADPro_D5")
- (set PATCH_VOLUME (cat PATCH_NAME ":"))
-
- (set SOURCE_NAME "DPaintIV Installationsdiskette 1")
- (set SOURCE_VOLUME (cat SOURCE_NAME ":"))
-
- (set DEST_NAME "DPaint 4.6 Installationsdiskette")
- (set DEST_VOLUME (cat DEST_NAME ":"))
-
- (set ASSIGN "DPaintIV")
- (set PROGNAME "DPaint")
- (set UNPACKER "lharc")
- (set RUNWIN "NIL:")
-
-
- (set PATCHER (cat PATCH_VOLUME "spatch"))
- (set PATCHFILE (cat PATCH_VOLUME "DPaint.pch.ger"))
-
- (set LHARC_EXTRACT_HELP
- (cat
- "Der Installer benutzt LHARC zum Extrahieren des DPaint-Programms "
- "aus seinem Archiv von der Original-Installationsdiskette."
- )
- )
-
- (set LHARC_ADD_HELP
- (cat
- "Das Installationsprogramm fügt die Patch-Version von DPaint mit Hilfe "
- "von LHARC in sein Archiv auf der neuen Installationsdiskette ein."
- )
- )
-
- (set PATCH_HELP
- (cat
- "Das Installationsprogrramm benutzt das SPATCH-Utility von SAS/C für "
- "die Änderungen an einer Kopie Ihres Original-DPaint-Programms."
- )
- )
-
- (set RENAME_HELP
- (cat "Der Installer ändert den Namen der eingelegten Diskette "
- "von \""ZIEL_NAME"\" auf \"" QUELL_NAME "\", damit die "
- "Originaldiskette im DPaint-Installationsvorgang ersetzt "
- "werden kann."
- )
- )
-
- (set INIT_HELP
- (cat
- "Das DPaint 4.6 Patch erfordert die originale 4.5 Installations- "
- "diskette und eine installierte Version von DPaint 4.5. Das Patch "
- "kopiert die Originalprogrammdatei ins RAM, ändert sie "
- "und kopiert die geänderte Version in das Verzeichnis, in dem "
- "Sie DPaint 4.5 installiert haben.\n\n"
-
- "Dabei wird Ihre Original-DPaint 4.5 Installationsdiskette "
- "in KEINER WEISE verändert.\n\n"
-
- "Bitte vergewissern Sie sich, daß Ihre Original- DPaint 4.5 "
- "Installationsdiskette SCHREIBGESCHÜTZT ist und daß Sie Ihre "
- "Registriernummer parat haben."
- )
- )
-
- (set DIR_HELP
- (cat "Das Patch sucht nach der installierten Version von DPaint und "
- "ersetzt die Originalprogrammdatei durch die gepatchte "
- "Version.\n\n"
-
- "Bitte geben Sie den Datenträger und das Verzeichnis "
- "an, wo DPaint 4.5 im Moment installiert ist."
- )
- )
-
- (set BACKUP_HELP
- (cat "Bei Wahl von \"Ja\" kopiert das Installationsprogramm die momentan "
- "installierte Version von \"DPaint\" in ein "Backup"-Verzeichnis. "
- "Bei Wahl von \"Nein\" ersetzt oder überschreibt es "
- "ganz einfach die installierte Version durch die Patch-Version."
- )
- )
-
- (procedure ask_sourcedisk
- (askdisk
- (prompt ("Bitte die Diskette namens \"%s\" einlegen." SrcDiskE))
- (help @askdisk-help)
- (dest SrcDiskE)
- )
-
- (set SrcDiskE (cat SrcDiskE ":"))
- )
-
- ; Destination disk confirmation.
- ; DstDiskE: The disk to insert
- (procedure ask_destdisk
- (askdisk
- (prompt ("Bitte die Diskette namens \"%s\" einlegen." DstDiskE))
- (help @askdisk-help)
- (dest DstDiskE)
- )
-
- (set DstDiskE (cat DstDiskE ":"))
- )
-
- (set osversion (/ (getversion) 65536))
- (if (< osversion 37)
- (abort "DeluxePaint erfordert AmigaDOS 2.04 oder höher.")
- )
-
- ; Make sure the user has the appropriate disks ready
- (
- (if (askbool
- (prompt "Sie brauchen Ihre originale \"DPaintIV Installations- "
- "diskette 1\" und eine installierte Version von "
- "DPaint 4.5. Die Original \"DPaintIV Installations- "
- "diskette 1\" wird in KEINER WEISE geändert, "
- "aber die installierte Version wird auf die "
- "Version 4.6 aktualisiert.\n\n"
-
- "Wenn Sie DPaint 4.5 noch nicht installiert "
- "haben, tun Sie dies, bevor Sie das Patch "
- "auführen.\n\n"
-
- "Bitte halten Sie Ihre Registriernummer bereit; "
- "Sie werden zum Registrieren Ihres Exemplars "
- "von DPaint 4.6 aufgefordert."
- )
- (help INIT_HELP)
- (choices "Weiter" "Abbrechen")
- (default 1)
- )
-
- (set dummy 1)
- (abort "Installation durch Benutzer abgebrochen")
- )
- )
-
- ; copy the necessary patch files to ram
- (
- (set SrcDiskE PATCH_NAME)
- (ask_sourcedisk)
-
- (copyfiles
- (prompt "")
- (help "")
- (source (tackon SrcDiskE UNPACKER))
- (dest "ram:")
- )
-
- (set UNPACKER (tackon "ram:" UNPACKER))
- )
-
-
- ; copy the original program file
- (
- (set SrcDiskE SOURCE_NAME)
- (ask_sourcedisk)
-
- ; make sure file isn't already there due to some previous attemp
- (delete "ram:DPaint")
-
- (working ("Extrahiert die DPaint 4.5-Programmdatei"))
- (set archive (tackon SrcDiskE "dpaint.lzh"))
- (set result
- (run ("%s x \"%s\" ram: dpaint* > %s" UNPACKER archive RUNWIN)
- (help LHARC_EXTRACT_HELP)
- (prompt ("Original-DPaint 4.5-Programmdatei extrahieren?"))
- (confirm)
- )
- )
- (if result (abort "Fehler beim Extrahieren des Programms"))
- )
-
-
- (
- (set SrcDiskE PATCH_NAME)
- (ask_sourcedisk)
-
- (working ("DPaint-Programmdatei wird gepatcht"))
-
- ; make sure file isn't already there due to some previous attempt
- (delete "ram:patched")
-
- (set result
- (run
- ("\"%s\" -p%s -oram:patched ram:dpaint > %s" PATCHER PATCHFILE RUNWIN)
- (help PATCH_HELP)
- (prompt ("DPaint 4.5-Programmdatei patchen?"))
- (confirm)
- )
- )
-
- (delete "ram:dpaint")
- (if result (abort "Fehler beim Patchen des Programms"))
- (rename "ram:patched" "ram:dpaint")
- )
-
- ; see if this is really an update
-
- (set dpaint_dest (getassign ASSIGN "a"))
-
- ; if update, be sure they want program in same place
-
- (if dpaint_dest
- (if (not
- (askbool
- (prompt "Ihre aktuelle Kopie von DPaintIV scheint in der Schublade "
- "namens "\dpaint_dest "\" zu sein. Soll das Update auch "
- "dort installiert werden?"
- )
- (help DIR_HELP)
- (default 1)
- )
- )
-
- (set dpaint_dest ; if user wants in different place
- (askdir
- (prompt "In welchem Laufwerk bzw. welcher Schublade "
- "soll das 4.6 Patch installiert werden?"
- )
- (help (cat DIR_HELP "\n\n" @askdir-help))
- (default @default-dest)
- )
- )
- )
-
- ; Update not found, so get a location for program
-
- (set dpaint_dest
- (askdir
- (prompt "Bitte wählen Sie das Verzeichnis, in dem Sie "
- "DPaint 4.5 installiert haben."
- )
- (help (cat DIR_HELP "\n\n" @askdir-help))
- (default @default-dest)
- )
- )
- )
-
- ; OK, we know where we'll be installing, so let's make it permanent
- (set @default-dest dpaint_dest)
-
- (set ProgramFile (tackon dpaint_dest "DPaint"))
-
- (if (exists ProgramFile)
- (
- (if (askbool
- (prompt "Backup der aktuell installierten Programmdatei anfertigen?")
- (help BACKUP_HELP)
- (default 1)
- )
-
- ; Note: we copy the file to a backup directory instead of
- ; to a backup file name so the icons won't overlap
- (copyfiles
- (source ProgramFile)
- (dest (tackon dpaint_dest "Backup"))
- (help BACKUP_HELP)
- (infos)
- )
- )
- )
- )
-
- (if (exists (tackon ProgramFile ".info"))
- ; use the existing .info file
- (
- (delete "ram:DPaint.info")
- (copyfiles
- (prompt "")
- (help "")
- (source "ram:DPaint")
- (dest dpaint_dest)
- (confirm)
- )
- )
-
- ; copy the .info file from ram:
- (copyfiles
- (prompt "")
- (help "")
- (source "ram:DPaint")
- (dest dpaint_dest)
- (confirm)
- (infos)
- )
- )
-
- (delete UNPACKER)
- (delete "ram:dpaint")
- (delete "ram:dpaint.info")
-
- ; Ask if the user would like to register
- ; his/herself by running the main program
-
- (if (askbool
- (prompt "Möchten Sie Ihr Exemplar von DPaint 4.6 starten "
- "und auf Ihren Namen eintragen?")
- (help
- "DPaint 4.6 muß beim ersten Mal auf den persönlichen Namen "
- "eingetragen werden. Sie können DPaint 4.6 auf Wunsch auch erst "
- "später betreiben und müssen es dann auf Ihren Namen eintragen."
- )
- (default 1)
- )
-
- (run
- ("run >NIL: <NIL: \"%s\"" ProgramFile)
- (help RUNHELP)
- (prompt "DPaint 4.6 starten")
- (confirm)
- )
- )
-
- (exit)