;
; $VER: IOBlix parallel port zip installation 1.7 (07.02.2000)
;
; Copyright (c) 1998-2000 Thore Böckelmann and RBM Computertechnik
;

;****************************************************************************
;
; English texts
;
(if (not (= @language "deutsch"))
    (
        (set #bad-kick      "You must have AmigaOS 2.0 (V37) or newer to be able to use the IOBlix I/O board.")
        (set #bad-cpu       "You must have at least an MC68020 to use the IOBlix software.")
        (set #cantremove    (cat "Cannot remove old ioblix.resource! "
                                 "Please quit any software using the IOBlix before installing the new drivers!"))
        (set #cantinit      (cat "Cannot initialize ioblix.resource! "
                                 "Please quit any software using the IOBlix before installing the new drivers!"))
        (set #noioblix      (cat "You have no IOBlix board installed! "
                                 "Please install the board first, before you install the software!"))
        (set #intro         (cat "\n"
                                 "Now you can install the necessary drivers for a ZIP drive connected to IOBlix' parallel port."
                                 "Drivers for FFS- and PC-formatted ZIP disks will be installed."
                                 "\n"
                                 "\n"
                                 "Do you want to install the drivers now?"))
        (set #selectdevs    "\nWhere to install the device drivers?\n")
        (set #copyzipdev    "\nCopying ioblixzip.device...\n")
        (set #copydosdriver "\nCopying DOSDrivers...\n")
        (set #zipquery      (cat "Do want to install drivers for a "
                                 "parallel port ZIP drive?"))
        (set #zipdevask     (cat "You have an IOBlixZ2- and an IOBlix1200P board installed. "
                                 "To which board do you want to connect the ZIP drive?"))
        (set #zipunitask    (cat "To which port do you want to connect the ZIP drive?\n"
                                 "Please make sure you select a port which really exists!"))
        (set #zipstart      "Do you want the ZIP driver to be started on bootup?")
        (set #zipinfo       (cat "The driver PZIP0: is meant for FFS formatted ZIP disks with 512 bytes blocksize,\n"
                                 "and the driver PZIPC: is meant for PC formatted ZIP disks. This requires CrossDOS to be installed."))
    )
)

;****************************************************************************
;
; Deutsche Texte
;
(if (= @language "deutsch")
    (
        (set #bad-kick      "Sie müssen AmigaOS 2.0 (V37) oder höher installieren, um die IOBlix-Karte zu benutzen.")
        (set #bad-cpu       "Sie brauchen mindestens einen MC68020, um die IOBlix-Software zu benutzen.")
        (set #cantremove    (cat "Kann alte ioblix.resource nicht aus dem System entfernen!\n"
                                 "Bitte beenden Sie alle Programme, die den IOBlix benutzen, bevor Sie die neue Software installieren!"))
        (set #cantinit      (cat "Kann ioblix.resource nicht initialisieren!\n"
                                 "Bitte beenden Sie alle Programme, die den IOBlix benutzen, bevor Sie die neue Software installieren!"))
        (set #noioblix      (cat "Sie haben keine IOBlix-Karte in Ihrem Rechner installiert! "
                                 "Bitte bauen Sie erst die Karte ein, bevor Sie die Software installieren!"))
        (set #intro         (cat "\n"
                                 "Sie können jetzt die nötigen Treiber für ein ZIP Laufwerk am Parallelport der IOBlix-Karte "
                                 "installieren. Es werden Treiber für FFS- und PC-formatierte Medien installiert."
                                 "\n"
                                 "\n"
                                 "Wollen Sie die Treiber jetzt installieren?"))
        (set #selectdevs    "\nWohin sollen die Gerätetreiber kopiert werden?\n")
        (set #copyzipdev    "\nKopiere ioblixzip.device...\n")
        (set #copydosdriver "\nKopiere DOSDrivers...\n")
        (set #zipquery      (cat "\n"
                                 "Wollen Sie Treiber für ein Parallel-Port ZIP Laufwerk installieren?"))
        (set #zipdevask     (cat "Sie haben eine IOBlixZ2- und eine IOBlix1200P-Karte installiert. "
                                 "An welcher Karte soll das ZIP Laufwerk betrieben werden?"))
        (set #zipunitask    (cat "An welchem Port soll das ZIP Laufwerk betrieben werden?\n"
                                 "Bitte stellen Sie sicher, daß sie einen existierenden Port auswählen!"))
        (set #zipstart      "Soll der ZIP Treiber gleich beim Booten gestartet werden?")
        (set #zipinfo       (cat "Der Treiber PZIP0: ist für FFS-formatierte ZIP-Medien mit einer Blockgröße von 512 Bytes gedacht,\n"
                                 "und der Treiber PZIPC: for PC-formatierte ZIP-Medien. Dafür muß CrossDOS installiert sein."))
    )
)

;****************************************************************************
;
; Setup
;

(complete 0)

(if (< (/ (getversion) 65536) 37)
    (abort #bad-kick)
)

(if (patmatch "68000|68010" (database "cpu"))
    (abort #bad-cpu)
)

;****************************************************************************
;
; Welcome
;

(welcome)

(complete 10)

;****************************************************************************
;
; Check for IOBlix board
;

(set #setupcheck (run "C/SetupIOBlix remove" (safe)))
(if (< 0 #setupcheck)
    (abort #cantremove)
)

(set #setupcheck (run "C/SetupIOBlix reinit" (safe)))
(if (< 0 #setupcheck)
    (abort #cantinit)
)

(set #ioblixz2 (run "C/Look4IOBlix hw=par" (safe)))
(set #ioblix1200 (run "C/Look4IOBlix a1200 hw=par" (safe)))
(if (and (= 0 #ioblixz2) (= 0 #ioblix1200))
    (abort #noioblix)
)

(complete 20)

;****************************************************************************
;
;
;

(set #doit
    (askbool
        (prompt #intro)
        (help @askbool-help)
        (default 1)
    )
)

(if (= 0 #doit)
    (exit (quiet))
)

(if (and (< 0 #ioblixz2) (< 0 #ioblix1200))
    (
        (set #ioblixboard
            (askchoice
                (prompt #zipdevask)
                (help @askchoice-help)
                (choices "IOBlixZ2" "IOBlix1200P")
                (default 0)
            )
        )
    )
    (
        (if (< 0 #ioblixz2)
            (
                (set #ioblixboard 0)
            )
            (
                (set #ioblixboard 1)
            )
        )
    )
)

(if (= 0 #ioblixboard)
    (
        (set #zipdevice "ioblixzip.device")
        (set #zipunit
            (askchoice
                (prompt #zipunitask)
                (help @askchoice-help)
                (choices "Port 0" "Port 1")
                (default 0)
            )
        )
    )
    (
        (set #zipdevice "ioblix12zip.device")
        (set #zipunit
            (askchoice
                (prompt #zipunitask)
                (help @askchoice-help)
                (choices "Port 0" "Port 1" "Port 2" "Port 3")
                (default 0)
            )
        )
    )
)
(set #zipunit (cat "" #zipunit))

;****************************************************************************
;
; Setup directory
;

(complete 30)

(set #destdevs
    (askdir
        (prompt #selectdevs)
        (help @askdir-help)
        (default "DEVS:")
    )
)

;****************************************************************************
;
; Install devices
;

(if (= 0 #ioblixboard)
    (
        (set #file (tackon "Devs/IOBlixZ2" #zipdevice))
    )
    (
        (set #file (tackon "Devs/IOBlix1200" #zipdevice))
    )
)
(copylib
    (help @copylib-help)
    (prompt #copyzipdev)
    (source #file)
    (dest #destdevs)
    (confirm)
)

(complete 60)

(copyfiles
    (help @copyfiles-help)
    (prompt #copydosdriver)
    (source "Devs/DOSDrivers")
    (choices "PZIP0" "PZIPC")
    (dest "SYS:Storage/DOSDrivers")
    (infos)
    (confirm)
)

(if (= 1 (exists "SYS:Storage/DOSDrivers/PZIP0"))
    (tooltype
        (dest "SYS:Storage/DOSDrivers/PZIP0")
        (settooltype "DEVICE" #zipdevice)
        (settooltype "UNIT" #zipunit)
    )
)
(if (= 1 (exists "SYS:Storage/DOSDrivers/PZIPC"))
    (tooltype
        (dest "SYS:Storage/DOSDrivers/PZIPC")
        (settooltype "DEVICE" #zipdevice)
        (settooltype "UNIT" #zipunit)
    )
)

;****************************************************************************
;
;
;

(startup "IOBlix ZIP driver"
    (help @startup-help)
    (prompt #zipstart)
    (command (cat "mount PZIP0: >nil:\n"
                  "mount PZIPC: >nil:"))
)

(complete 90)

(message #zipinfo)

;****************************************************************************
;
; Exit
;

(complete 100)
(exit)

