home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fresh Fish 4
/
FreshFish_May-June1994.bin
/
new
/
disk
/
salv
/
disksalv2
/
makeboot
< prev
next >
Wrap
Text File
|
1994-04-10
|
12KB
|
322 lines
;======================================================================
;
; DiskSalv boot disk generator -- $VER: MakeBoot 11.4 (12.8.93)
;
; 11.4 Added additional libraries for copy.
; Now copies "Devs:system-configuration" for better preferences
; support.
; Better checks in place for existance of locale archives.
; 11.3 Bugs fixed in library copy pattern.
;
;======================================================================
;
; Some basic strings
(set #disksalv-install
(cat "\nDiskSalv Boot Disk Generator\n"
"\nThis utility will format a floppy disk and install DiskSalv"
" and its support files based on your hard disk setup. The"
" result is a bootable floppy with DiskSalv on it. Proceed?"))
(set #disksalv-install-help
(cat "\nIn the case of a severe hard disk failure, DiskSalv isn't"
" going to be real useful on your hard disk. This utility"
" builds a bootable floppy that may be used in such cases to"
" streamline such repair activity." ))
(set #which-disk
"In which floppy disk drive should DiskSalv be installed?")
(set #any-locale
(cat "\nInstall DiskSalv Localizations\n"
"\nYou may install the DiskSalv locale files for various"
" languages in the Locale directory. Proceed?"))
(set #any-locale-help
(cat "\nDiskSalv can be operated in different languages."
"\n\nIf you choose to proceed, you will be asked to"
" select the translations you want available on your"
" system."))
(set #which-language "\nWhich catalogs should be installed?")
(set #which-language-help
(cat "\nDiskSalv can be operated in many different"
" languages. One file will be copied to your "
" hard drive for each language supported.\n\n"
"To reduce the amount of space consumed by the"
" language files, you can select only the"
" files of specific languages to be copied.\n\n"
"Check the boxes of the languages you wish to"
" have available on your system.\n\n"
@askoptions-help))
(set #subdir-catalog "locale/catalogs"
#outdisk-name "DiskSalv Boot"
#dscatname "DiskSalv.catalog"
#tmp-dir "T:DiskSalv")
(set #get-dearchiver
(cat "\nPlease specify the file name of a de-archiver "
"program for \"LHA\"-type files."))
(set #ds-done
(cat "\nDiskSalv boot disk construction is complete.\n"
"\nPlease be aware that, while every effort has been made"
" to support your particular setup, it is possible that"
" some files you need for a simple bootup have not been"
" copied to the boot disk. Please try this disk out now,"
" rather than waiting until you actually need it."))
;======================================================================
;
; This function does the actual formatting of the given "outputdisk".
;
(procedure FORMATDISK
(if (askbool (prompt (cat "Please insert a floppy disk to be formatted "
"in drive " outputdisk))
(choices "Ok" "Cancel")
(help "\nPlease select the floppy disk unit for the installation.\n")
(default 1))
((working "Formatting disk " outputdisk " as \"" #outdisk-name "\"")
(run (cat "SYS:System/Format <NIL: >\"CON:10/10/500/50/Formatting...\" DRIVE "
outputdisk " NAME \"" #outdisk-name "\" NOICONS"))
(run (cat "C:Install DRIVE " outputdisk)))
(exit "Operation cancelled")))
;======================================================================
;
; This function makes all the important directories for the DiskSalv
; boot disk.
;
(procedure MAKESYS
(working "Creating System Directories")
(copyfiles (source "C:")
(dest (tackon outputdisk "C"))
(pattern (cat "(AddBuffers|AddDataTypes|Assign|BindDrivers|"
"ConClip|Copy|Delete|Dir|Execute|IPrefs|List|"
"LoadWB|MagTape|MakeDir|Mount|SetClock|"
"SetPatch|Version|Wait)")))
(makedir (tackon outputdisk "Classes"))
(makedir (tackon outputdisk "Devs"))
(makedir (tackon outputdisk "Devs/DataTypes"))
(makedir (tackon outputdisk "Devs/Printers"))
(copyfiles (source "Devs:DOSDrivers")
(dest (tackon outputdisk "Devs/DOSDrivers"))
(pattern "#?"))
(copyfiles (source "Devs:Keymaps")
(dest (tackon outputdisk "Devs/Keymaps"))
(pattern "#?"))
(copyfiles (source "Devs:Monitors")
(dest (tackon outputdisk "Devs/Monitors"))
(pattern "((Dbl|%)(PAL|NTSC)|MultiScan|VGAOnly)")
(infos))
(copyfiles (source "Devs:")
(dest (tackon outputdisk "Devs"))
(pattern "system-configuration"))
(copyfiles (source "SYS:Expansion")
(dest (tackon outputdisk "Expansion"))
(pattern "#?"))
(makedir (tackon outputdisk "Fonts"))
(copyfiles (source "L:")
(dest (tackon outputdisk "L"))
(pattern "#?FileSystem"))
(copyfiles (source "Libs:")
(dest (tackon outputdisk "Libs"))
(pattern "(68040|amigaguide|asl|diskfont|iffparse|locale|version).library"))
(makedir (tackon outputdisk "Locale"))
(makedir (tackon outputdisk "Locale/Catalogs"))
(copyfiles (source "Locale:Countries")
(dest (tackon outputdisk "Locale/Countries"))
(pattern "#?"))
(copyfiles (source "Locale:Languages")
(dest (tackon outputdisk "Locale/Languages"))
(pattern "#?"))
(makedir (tackon outputdisk "Prefs"))
(makedir (tackon outputdisk "Prefs/Env-Archive"))
(copyfiles (source "ENVARC:Sys")
(dest (tackon outputdisk "Prefs/Env-Archive/Sys"))
(pattern "(pointer|locale|palette|wbconfig).(ilbm|prefs)"))
(copyfiles (source "S:")
(dest (tackon outputdisk "S"))
(pattern "Startup-Sequence"))
(makedir (tackon outputdisk "System"))
(makedir (tackon outputdisk "T"))
(makedir (tackon outputdisk "Tools"))
(makedir (tackon outputdisk "Utilities"))
(makedir (tackon outputdisk "WBStartup"))
)
;======================================================================
;
; This function asks about the language, and sets the global "lang" to
; the language bit mask returned by the request.
;
(procedure ASKLANGUAGE
(set lang (askoptions (prompt #which-language)
(help #which-language-help)
(choices "dansk"
"deutsch"
"english"
"français"
"italiano"
"norsk"
"suomi"
"svenska")
(default 0))))
;======================================================================
;
; This function finds a de-archiver in the user's system, resulting to
; a panic "ask-the-user" if none can be found.
;
(procedure FINDARCPROG
(set n 0)
(while (set test (select n "lharc"
"lha"
"lz"
""))
(if (not (run (cat "which " test)))
(set arcprog test))
(set n (+ n 1)))
(if (= arcprog "")
(set arcprog (askfile (prompt #get-dearchiver)
(help @askfile-help)
(default "C:"))))
)
;======================================================================
;
; This function gets the locale file information. We mark the occasion
; with bit 0 set for the availability of the subdirectory, bit 1 set
; for the availability of the archive file.
;
(procedure ANYLOCALE
(set localecode 0)
(if (exists locale-catalogs)
(set localecode 1))
(if (exists locale-archive)
(set localecode (+ localecode 2)))
localecode)
;