.bra {
.ket }
.key DemoDir,DataDir,DemoIcon,LhA_path
; Set the directories for the Pro-Board_DEMO and its PCB data files.
; These directories may be the same.
; DemoIcon should be NIL: if PB_DEMO installed to Root or Volume.
; Will be ignored if parent of the destination directory already has an icon.

ECHO "Installing Demo to {DemoDir}"
ECHO "Installing Data to {DataDir}"
ECHO "   DemoIcon set to {DemoIcon}"
ECHO "   LhA path set to {LhA_path}"

IF {LhA_path$"Nothing"} EQ "Nothing"
   ECHO " "
   ECHO "Usage: [EXECUTE] InstallHardDisk DemoDir DataDir LhA_path
   ECHO " "
   ECHO "  [EXECUTE] required if your version of AmigaDOS does"
   ECHO "            not support the Script bit"
   ECHO "  DemoDir:  Volume:Directory-path to install demo program"
   ECHO "  DataDir:  Volume:Directory-path to install data files"
   ECHO "  LhA_path: Volume:Directory-path/filename of LhA-compatible"
   ECHO "            file extractor."
   ECHO "  "
   ECHO "    THIS BATCH FILE IS BEST USED WHEN CALLED BY `To-HardDisk'"
   ECHO "    WHICH WILL USE A FILE REQUESTER TO SIMPLIFY THE PROCEDURE"
   ECHO "  "
   QUIT
ENDIF

IF NOT EXISTS {LhA_path}
  ReqRequest " LhA must be in the command path " Quit "Try again"
   IF WARN
      SKIP OutaHere
   ENDIF
  IF NOT EXISTS {LhA_path}
    ReqRequest " LhA really MUST be in the command path " Quit
    SKIP OutaHere
  ENDIF
ENDIF

ASSIGN >NIL: ProDemoArc: EXISTS   ; May have been set by another batch file
IF NOT WARN
  ASSIGN ProDemoArc: /  ; Point to parent directory
ENDIF

IF NOT EXISTS {DemoDir}
  ECHO "Creating demo directory {DemoDir}"
  MAKEDIR {DemoDir}
  IF FAIL
    ReqRequest " Could not create {DemoDir} " QUIT
    SKIP CleanUp
  ENDIF
ENDIF

IF NOT EXISTS {DataDir}
  ECHO "Creating data directory {DataDir}"
  MAKEDIR {DataDir}
  IF FAIL
    ReqRequest " Could not create {DataDir} " QUIT
    SKIP CleanUp
  ELSE
    SKIP Install
  ENDIF
ELSE
  CD {DataDir}
  IF NOT EXISTS afilib   ; Library Part database file.  Do not overwrite.
    SKIP Install
  ENDIF
ENDIF

; Found Library Part database; so this is an UPDATE

ProDemoArc:Install/ReqRequest " Overwrite Library Parts? " " Yes " " No "
IF NOT WARN
  ProDemoArc:Install/ReqRequest " Install to DF0: instead? " " Yes " " No "
  IF WARN
    EXECUTE ProDemoArc:Install/To-DF0
  ENDIF
  SKIP CleanUp
ENDIF


LAB Install

CD {DemoDir}
{LhA_path} x ProDemoArc:PRODEMO.LHA
IF NOT EXISTS {DemoIcon}
  COPY ProDemoArc:Pro-Board.icon to {DemoIcon}
ENDIF
CD {DataDir}
{LhA_path} x ProDemoArc:PRODATA.LHA


LAB AddAssign  ; Prompt user to modify User-StartUp, if it exists.
;                Otherwise, tell user how to change StartUp-Sequence

ASSIGN Pro-Data: {DataDir}
ECHO >RAM:ProData.assign "ASSIGN Pro-Data:  {DataDir}"
IF EXISTS S:User-StartUp
  ProDemoArc:Install/ReqRequest " Add Pro-Data: to S:User-StartUp? " " Yes " " No "
  IF WARN
    JOIN S:User-StartUp RAM:ProData.assign as RAM:User-StartUp
    COPY RAM:User-StartUp S:
    DELETE >NIL: RAM:User-StartUp
  ENDIF
  SKIP CleanUp
ELSE
   ProDemoArc:Install/ReqRequest " Update S:StartUp-Sequence to include ASSIGN " " Continue "
   ProDemoArc:Install/ReqRequest " Look at file `ProData.assign' in RAM: " "Continue "
ENDIF


LAB CleanUp

ASSIGN ProDemoArc:


LAB OutaHere

EndCLI

