home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Amiga Game Guide
/
AmigaGameGuide_CD.iso
/
Amiga
/
Game-Installer
/
Normale-Installer
/
Civilization
/
Civilization_to_HD
next >
Wrap
Text File
|
1977-12-31
|
10KB
|
343 lines
;===========================================
; Civilization installer by Scott Gray, 1998
;===========================================
; Welcome to my version of the Civilization HD installer. If you have
; had to suffer the original version supplied with the game, then
; you will know why I have taken the time to write my own.
;
; Anyway, I hope this installer works a treat for you as it does
; for me! Enjoy,
;
; Scott.
;===========================================
; Version number and creation date variables
;===========================================
(set SCRIPT_DATE "25 July 1998")
(set SCRIPT_VER "1.02")
;========================
; Opening welcome message
;========================
(set GOINGIN
(cat "\nWelcome to the Civilization HD installer."
"\n\nCivilization ©1992 Microprose Ltd."
"\n\nThis program will require 2.27Mb HD space"
"\nfor the main program and 30,168 bytes"
"\nfor the Civilization fonts."
"\n\nThis installer written by Scott Gray."
"\nwww - http://www.sledge.demon.co.uk"
"\n\nCreated: " SCRIPT_DATE "\nVersion: " SCRIPT_VER
)
)
;===============
; Assign message
;===============
(set ASSIGN
(cat "\nAssign Notice"
"\n\nCivilization requires that an assign"
"\nis made in order to work properly."
"\n\nThe file \"s:user-startup\""
"\nwill need to be modified by the installer"
"\nto include that assign."
"\n\nTo do so, simply press \"Proceed\"."
)
)
(set ADDENDUM
(cat "\n\n\nPlease reset your Amiga before attempting to play"
"\nCivilization, so that the assigns can take effect."
"\n\nHave Fun!!!"
"\n\nScott ©1998."
)
)
;==========================
; Set minimum install space
;==========================
(set INSTALL_SPACE 2274000) ; 2.27M required to install
(set FONT_SPACE 30168) ; 30k needed for fonts
;=====================
; Set name for Program
;=====================
(set PROG_NAME "Civilization")
;======================
; Set install variables
;======================
(set CHOOSE_NEW_VOL ("Please choose a volume on which to install\n"))
;==============================
; Ok, time to begin, kiddies :)
;==============================
(complete 0)
(message GOINGIN)
;================================
; Pop up a requester asking for a
; destination for the files to be
; copied to.
;================================
(set @default-dest
(askdir
(prompt CHOOSE_NEW_VOL PROG_NAME)
(help @askdir-help)
(default @default-dest)
(disk)
)
)
;================================================
; If there is insufficient space on target drive,
; warn user. Otherwise continue.
;================================================
(while (>= INSTALL_SPACE (getdiskspace @default-dest))
((if (NOT @user-level)
(abort (cat "\nNot enough space to install\n\n" PROG_NAME
" to " @default-dest
"\n\nPlease free "
(- INSTALL_SPACE (getdiskspace @default-dest))
" bytes before installing again."
"\n\n(There are only "
(getdiskspace @default-dest))
" bytes available on device "
(getdevice @default-dest) ":)")
)
(message (cat "\n\n\nNot enough space to install\n\n" PROG_NAME
" to " @default-dest
"\n\nPlease free "
(- INSTALL_SPACE (getdiskspace @default-dest))
" bytes before proceeding."
"\n\n(There are only "
(getdiskspace @default-dest)
" bytes available on device "
(getdevice @default-dest)) ":)")
)
)
;======================================
; Verify enough space for fonts in SYS:
;======================================
(while (>= FONT_SPACE (getdiskspace "SYS:"))
((if (NOT @user-level)
(abort (cat "\n\n\Not enough space to install"
"\nthe " PROG_NAME " fonts to \""
(getdevice "SYS:")
":Fonts\""
"\n\nPlease free "
(- FONT_SPACE (getdiskspace "SYS:"))
" bytes before installing again."
"\n\n(There are only "
(getdiskspace "SYS:"))
" bytes available on device "
(getdevice "SYS:") ":)")
)
(message (cat "\n\n\n\nNot enough space to install"
"\nthe " PROG_NAME " fonts to \""
(getdevice "SYS:")
":Fonts\""
"\n\nPlease free "
(- FONT_SPACE (getdiskspace "SYS:"))
" bytes before proceeding."
"\n\n(There are only "
(getdiskspace "SYS:"))
" bytes available on device "
(getdevice "SYS:") ":)")
)
)
;================================================
; Time to give the user the happy news that there
; is indeed enough space to complete the install
; procedure on their chosen device.
;================================================
(message
(cat "\n\n\n\nThis installer has verified that there is enough"
"\ndrive space to successfully complete the install"
"\nprocedure to the \"" @default-dest "\" drawer."
"\n\nThe \"SYS:Fonts\" drawer has also been examined"
"\nand can accomodate the " PROG_NAME " fonts."
)
)
;=============================================
; If a previous installation of "Civilization"
; exists in the target path, warn user.
; Otherwise continue.
;=============================================
(set Civ_exists (tackon @default-dest PROG_NAME))
(if (exists Civ_exists)
(message "\n\nWARNING"
"\n\nA previous installation of \"" PROG_NAME "\""
"\nhas been detected in the drawer"
"\n\n\"" @default-dest "\""
"\n\n\"Proceed\" will overwrite the previous installation, or"
"\n\"Abort Install\" will cancel the install procedure."
)
)
;================================================
; Time to tack on the "Civilization" drawer name,
; and create the drawer.
;================================================
(set @default-dest (tackon @default-dest PROG_NAME))
(makedir @default-dest
(help @makedir-help)
(infos)
)
;=======
; Disk 1
;=======
(complete 1)
(askdisk
(prompt ("\nPlease insert %s\nDisk A in any drive." PROG_NAME))
(help @askdisk-help)
(dest "CIV1")
)
(copyfiles
(help @copyfiles-help)
(source "CIV1:Fonts")
(dest "SYS:Fonts")
(all)
)
(copyfiles
(help @copyfiles-help)
(source "CIV1:")
(dest @default-dest)
(pattern "(#?.doc|#?.pix|#?.pal|#?.map|#?.txt|#?.SVE|#?.dta|evoltn|sadorch|sword|title|game)")
(infos)
)
;=======
; Disk 2
;=======
(complete 25)
(askdisk
(prompt ("\nPlease insert %s\nDisk B in any drive." PROG_NAME))
(help @askdisk-help)
(dest "CIV2")
)
(copyfiles
(help @copyfiles-help)
(source "CIV2:")
(dest @default-dest)
(pattern "(#?.bbm|#?.pal|#?.pix|#?.txt|#?.map|#?.SVE|alexander|building|ceasar|cele2|elizabeth|explode|frederic|ghandi|ghengis|lincoln|mao|monty|napoleon|ramses|saladin|shaka|stalin|title|war)")
)
;=======
; Disk 3
;=======
(complete 50)
(askdisk
(prompt ("\nPlease insert %s\nDisk C in any drive." PROG_NAME))
(help @askdisk-help)
(dest "CIV3")
)
(copyfiles
(help @copyfiles-help)
(source "CIV3:")
(dest @default-dest)
(pattern "(#?.pix|#?.pal|#?.txt|#?.SVE|#?.bbm|#?.map|hamarabi|nuke|winspace)")
)
;=======
; Disk 4
;=======
(complete 75)
(askdisk
(prompt ("\nPlease insert %s\nDisk D in any drive." PROG_NAME))
(help @askdisk-help)
(dest "CIV4")
)
(copyfiles
(help @copyfiles-help)
(source "CIV4:")
(dest @default-dest)
(pattern "(#?.pal|#?.pix|#?.txt|#?.bbm|#?.map|#?.SVE|#?.dta)")
)
(complete 96)
;========================================
; Now to add two new icons to replace the
; old crappy A500 style ones.
;========================================
(if (= (exists "Icons/Civilization.info"))
(run (cat "copy \"Icons/Civilization.info\"" " \"" @default-dest ".info\"")))
(set README_exists (tackon @default-dest "readme.doc.info"))
(if (exists README_exists)
(if (= (exists "Icons/readme.doc.info"))
(run (cat "copy \"Icons/readme.doc.info\"" " \"" @default-dest "/readme.doc.info\"")
)
)
)
;================================
; Time to inform the user that an
; assign needs to be made in
; s:user-startup.
;================================
(complete 98)
(message ASSIGN
(help @startup-help)
)
(complete 99)
(startup "Civilization"
(prompt ASSIGN)
(help @startup-help)
(command "if exists \"" @default-dest "\"\n")
(command "Assign CIV1: \"" @default-dest "\"\n")
(command "Assign CIV2: \"" @default-dest "\"\n")
(command "Assign CIV3: \"" @default-dest "\"\n")
(command "Assign CIV4: \"" @default-dest "\"\n")
(command ";next line required to fix ghost disk problem.\n")
(command "Assign CIV8: \"" @default-dest "\"\n")
(command "endIF")
)
(complete 100)
(exit ADDENDUM)