cd ram: ; Advanced users can just unzoo Zar.zoo in their
path RAM: add
copy c:copy ram: ; usual way, but should check out this gnarly
copy c:echo ram: ; script as a serious interactive IconX example
copy c:ask ram: ; with overkill error trapping (see "On Icons" in A+ #5)
; Also note my Fancy-ANSI styles for questions and messages
failat 40 ; Don't let any errors stop us now!
echo "[33m AMIGA [3mPlus[0m[33m MakePhasar script.[0m"
echo ""
echo "This script will decompress Phasar 3.0."
echo " It expects your AMIGA [3mPlus[0m disk to be named AMIGAPlus6."
echo ""
Ask "[33mDo you want to continue? (Click here and type Y or N) (N to abort)[0m"
IF NOT WARN
SKIP endline
ENDIF
IF NOT "RAM DISK:" EQ "" ; This means icon was double-clicked w/out target
assign Zar: "RAM DISK:" ; Zar: is our destination for Phasar
cd >nil: "RAM DISK:" ; check if targetdisk is a file
IF WARN
ECHO "[1m[33m HEY! "
ECHO " That was a file, not a drawer or disk icon!"
ECHO " I can't handle it. I wanna go home![0m "
SKIP endline
ENDIF
echo "You have asked me to put Phasar 3.0 on RAM DISK:"
Ask "[33mAre you sure you want to continue? (N to abort)[0m"
IF NOT WARN
SKIP endline
ENDIF
SKIP ToPhasarHD
ENDIF
assign Zar:
echo "Please answer the following questions: [0m"
echo ""
Ask "[33mDo you wish to Install Phasar on a Hard drive? (Y|N)[0m "
IF WARN
echo "To install Phasar on a partition of your Hard Disk,"
echo "click on the MakePhasar Script, hold the shift key down, "
echo "and double-click on the destination drive or drawer icon."
echo "Another option is to drag this script icon over"
echo "to that disk (not a drawer) and start MakePhasar again"
Ask "[33mHave you already done this? (Y|N) (N to quit)[0m"
IF NOT WARN
SKIP endline
ELSE
ASSIGN Zar: :
CD zar:
SKIP ToPhasarHD
ENDIF
ELSE
Ask "[33mDo you have more than one floppy disk drive? (Y|N)[0m "
IF WARN
echo "Please insert the blank, formatted floppy disk into your"
echo "extra disk drive."
echo ""
echo "Amiga 2000 users may have an external drive called"
echo "DF2: rather than DF1: (the internal floppy drive)."
Ask "[33mIs your extra floppy drive called DF2:?(Y|N)[0m "
IF WARN
ASSIGN Zar: df2:
ELSE
ASSIGN Zar: df1:
ENDIF
SKIP ToPhasar
ELSE
echo "Well OK, you only have one floppy drive. If you have a hard disk"
echo "also, click on the MakePhasar Script, hold the shift key down, "
echo "and double-click on the destination drive or drawer icon."
echo "Another option is to drag this script icon over to that disk (not"
echo "a drawer) and start MakePhasar again."
Ask "[33m Would you like to start again? (Y|N) (Y to quit)[0m"
IF WARN
SKIP endline
ENDIF
Ask "[33mDo you have 1 disk drive and a Hard Disk? (Y|N)[0m"
IF WARN
ASSIGN Zar: :
CD zar:
SKIP ToPhasarHD
ENDIF
echo "Since you have only one floppy and no Hard disk, I'm gonna try"
echo "to use the RAM: disk as much as possible to avoid disk swapping."
echo "I hope you have about 500k of free memory. If you have alot of"
echo "files in your RAM: disk quit this script, delete those files, and"
echo "try again or finally, reboot and try again."
echo ""
Ask "[33mDo you want to continue? (Y|N) (N to abort)[0m"
IF NOT WARN
SKIP endline
ENDIF
echo ""
echo "Continue running the script even if you run out of memory."
echo "just click on CANCEL on the 'RAM disk full' requester."
ECHO " [42m[33mCopying files from AMIGA [3mPlus[0m[42m[33m disk...[0m"
echo ""
ram:copy AMIGAPlus6:Zar.zoo ram:
ram:copy AMIGAPlus6:zoo ram:
echo " [42m[33mCopying CLI commands to RAM: from C: ...[0m"
copy c:assign ram:
copy c:ask ram:
copy c:IF ram:
copy c:cd ram:
copy c:ENDIF ram:
copy c:ELSE ram:
copy c:delete ram:
ECHO " [42m[33mI copied what I could to RAM: ...[0m"
ECHO ""
ECHO "Please insert a blank, formatted floppy disk into your Amiga"
Ask "[33m hit return when the disk is inserted.[0m "
assign Zar: df0:
delete ram:assign
cd Zar:
IF EXISTS RAM:Zar.zoo
IF EXISTS RAM:zoo
ram:zoo x// ram:Zar.zoo
DELETE ram:zoo
DELETE ram:zar.zoo
ELSE
AMIGAPLUS6:ZOO x// ram:Zar.zoo
ENDIF
ELSE
copy AMIGAPlus6:Zar.zoo Zar:
IF EXISTS RAM:zoo
zoo x// Zar:Zar.zoo
DELETE ram:zoo
ELSE
AMIGAPlus6:ZOO x// Zar:Zar.zoo
ENDIF
ENDIF
; Now clean up
CD RAM:
DELETE ram:copy
DELETE ram:IF
DELETE ram:ENDIF
DELETE ram:ELSE
DELETE ram:cd
DELETE ram:delete
skip endline
ENDIF
ENDIF
lab ToPhasar
Ask "[33mAre you sure you want to continue? (N to abort)[0m"
IF NOT WARN
SKIP endline
ENDIF
cd Zar:
ask "[33mNow insert AMIGAPlus6 into DF0: and hit return[0m"
lab ToPhasarHD
echo " [0m [42m[33mBeginning the decompression process....( be patient )....[0m"
AMIGAPlus6:zoo x// AMIGAPlus6:Zar.zoo
lab endline
delete ram:ask
echo "[42m[33m Exiting AMIGA [3mPlus[0m[42m[33m MakePHASAR script.[0m"
delete ram:echo
endcli
endcli >NIL: