home *** CD-ROM | disk | FTP | other *** search
- '**************************************************************************
- '* MSSetup
- '**************************************************************************
-
- '$DEFINE DEBUG ''Define for script development/debugging
-
- '$INCLUDE 'setupapi.inc'
- '$INCLUDE 'msdetect.inc'
-
- ''Dialog ID's
- CONST WELCOME = 100
- CONST ASKQUIT = 200
- CONST DESTPATH = 300
- CONST EXITFAILURE = 400
- CONST EXITQUIT = 600
- CONST EXITSUCCESS = 700
- CONST IOOPTIONS = 1200 '' IO base address selection dialog
- CONST INTOPTIONS = 1120 '' Interrupt selection dialog
- CONST DMAOPTIONS = 1100 '' DMA Channel selection dialog
- CONST TVSOPTIONS = 1110 '' Give the VGA informatiion
- CONST INSTOPTIONS = 1500 '' Install or Configue selection dialog
- CONST APPHELP = 900 '' Help dialog box
- CONST BADPATH = 6400 '' Bad destination directory dialog box
- '' Dialog bitmap icon ID
- CONST LOGO = 1
-
- ''Global variable declaration
- GLOBAL DEST$ '' Default destination directory
- GLOBAL BASEIO$ '' I/O address
- GLOBAL INTR$ '' Interrupt
- GLOBAL DMA$ '' DMA channel
- GLOBAL TVSYSTEM$ '' TV is PAL or not
- GLOBAL LANGUAGE$ '' Simple chinese or english
- GLOBAL SELECTINSTALL$ '' Update configuration or full installation
- GLOBAL IOINDEX$
- GLOBAL INTINDEX$
- GLOBAL DMAINDEX$
- GLOBAL TVSINDEX$
- GLOBAL LNGINDEX$ '' 1 = Simple chinese , 2 = English
- GLOBAL RSTART%
-
- DECLARE SUB Install
- DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
-
- INIT:
- CUIDLL$ = "mscuistf.dll" ''Custom user interface dll
- HELPPROC$ = "FHelpDlgProc" ''Help dialog procedure
- RSTART% = 0
-
- SetBitmap CUIDLL$, LOGO
- SetTitle "MP011RMT Installation"
-
-
- BASEIO$ = "0x280"
- INTR$ = "11"
- DMA$ = "6"
- DEST$ = "C:\MP011RMT"
-
- WELCOME:
- sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", APPHELP, HELPPROC$)
- IF sz$ = "CONTINUE" THEN
- UIPop 1
- ELSE
- GOSUB ASKQUIT
- GOTO WELCOME
- END IF
-
- ' Get install choice
- INOPTION:
- SetSymbolValue "INSTALL","GREYED"
- sz$ = UIStartDlg(CUIDLL$, INSTOPTIONS, "FUpdateDlgProc", APPHELP, HELPPROC$)
- SELECTINSTALL$ = "FALSE"
-
- IF sz$ = "REACTIVATE" THEN
- GOTO INOPTION
- ELSEIF sz$ = "CONFIG" THEN
- UIPop 1
- GOTO IOOPTION
- ELSE
- GOSUB ASKQUIT
- GOTO INOPTION
- END IF
-
- ' Get IO Port choice
- IOOPTION:
- IOINDEX$ = "1"
- IOOPTL1:
- SetSymbolValue "RadioDefault", IOINDEX$
- sz$ = UIStartDlg(CUIDLL$, IOOPTIONS, "FIODlgProc", APPHELP, HELPPROC$)
- BASEIO$ = GetSymbolValue("IOPort")
- IOINDEX$ = GetSymbolValue("ButtonChecked")
-
- IF sz$ = "CONTINUE" THEN
- UIPop(1)
- ELSEIF sz$ = "REACTIVATE" THEN
- GOTO IOOPTL1
-
- ELSEIF sz$ = "BACK" THEN
- UIPop 1
- GOTO INOPTION
- ELSE
- GOSUB ASKQUIT
- GOTO IOOPTION
- END IF
-
- ' Get Interrupt choice
- INTOPTION:
- INTINDEX$ = "3"
- INTOPTL1:
- SetSymbolValue "RadioDefault", INTINDEX$
- sz$ = UIStartDlg(CUIDLL$, INTOPTIONS, "FIntDlgProc", APPHELP, HELPPROC$)
- INTR$ = GetSymbolValue("Interrupt")
- INTINDEX$ = GetSymbolValue("ButtonChecked")
-
- IF sz$ = "CONTINUE" THEN
- UIPop(1)
- ELSEIF sz$ = "REACTIVATE" THEN
- GOTO INTOPTL1
- ELSEIF sz$ = "BACK" THEN
- UIPop 1
- GOTO IOOPTL1
- ELSE
- GOSUB ASKQUIT
- GOTO INTOPTION
- END IF
-
- ' Get DMA choice
- DMAOPTION:
- DMAINDEX$ = "2"
- DMAOPTL1:
- SetSymbolValue "RadioDefault", DMAINDEX$
- sz$ = UIStartDlg(CUIDLL$, DMAOPTIONS, "FDMADlgProc", APPHELP, HELPPROC$)
- DMA$ = GetSymbolValue("DMAChannel")
- DMAINDEX$ = GetSymbolValue("ButtonChecked")
-
- IF sz$ = "CONTINUE" THEN
- UIPop(1)
- ELSEIF sz$ = "REACTIVATE" THEN
- GOTO DMAOPTL1
- ELSEIF sz$ = "BACK" THEN
- UIPop 1
- GOTO INTOPTL1
- ELSE
- GOSUB ASKQUIT
- GOTO DMAOPTION
- END IF
-
- ' Get TV SYSTEM information.
- TVSOPTION:
- TVSINDEX$ = "1"
- TVSOPTL1:
- SetSymbolValue "RadioDefault", TVSINDEX$
- sz$ = UIStartDlg(CUIDLL$, TVSOPTIONS, "FTVSDlgProc", APPHELP, HELPPROC$)
-
- TVSYSTEM$ = GetSymbolValue("TVSystem")
- TVSINDEX$ = GetSymbolValue("ButtonChecked")
-
- IF sz$ = "CONTINUE" THEN
- UIPop(1)
- ELSEIF sz$ = "REACTIVATE" THEN
- GOTO TVSOPTL1
- ELSEIF sz$ = "BACK" THEN
- UIPop 1
- GOTO DMAOPTL1
- ELSE
- GOSUB ASKQUIT
- GOTO TVSOPTION
- END IF
-
- Install
-
- QUIT:
- ON ERROR GOTO ERRQUIT
-
- IF ERR = 0 THEN
- dlg% = EXITSUCCESS
- ELSEIF ERR = STFQUIT THEN
- dlg% = EXITQUIT
- ELSE
- dlg% = EXITFAILURE
- END IF
-
- END
-
- ERRQUIT:
- i% = DoMsgBox("Setup were corrupted!", " ", MB_OK+MB_TASKMODAL+MB_ICONHAND)
-
- END
-
-
-
- BADPATH:
- sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO BADPATH
-
- END IF
- UIPop 1
- RETURN
-
-
-
- ASKQUIT:
- sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
-
- IF sz$ = "EXIT" THEN
- UIPopAll
- ERROR STFQUIT
- ELSEIF sz$ = "REACTIVATE" THEN
- GOTO ASKQUIT
- ELSE
- UIPop 1
- END IF
- RETURN
-
-
- '**
- '** Purpose:
- '** Builds the copy list and performs all installation operations.
- '** Arguments:
- '** none.
- '** Returns:
- '** none.
- '*************************************************************************
- SUB Install STATIC
-
-
- ' Create the MPEG-I.INI file
- ini$ = MakePath(GetWindowsDir(),"MPEG-I.INI")
-
- ' create section
- section$ = "System"
-
- ' Add the symbols to the MPEG-I.INI file
- CreateIniKeyValue ini$, section$, "BoardAddress", BASEIO$ , cmoOverwrite
- CreateIniKeyValue ini$, section$, "TVSystem", TVSYSTEM$ , cmoOverwrite
-
- section$ = "Video"
- CreateIniKeyValue ini$, section$, "IrqNumber", INTR$ , cmoOverwrite
- CreateIniKeyValue ini$, section$, "DmaChannel", DMA$, cmoOverwrite
-
- END SUB
-
-
-
- '**
- '** Purpose:
- '** Appends a file name to the end of a directory path,
- '** inserting a backslash character as needed.
- '** Arguments:
- '** szDir$ - full directory path (with optional ending "\")
- '** szFile$ - filename to append to directory
- '** Returns:
- '** Resulting fully qualified path name.
- '*************************************************************************
- FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
- IF szDir$ = "" THEN
- MakePath = szFile$
- ELSEIF szFile$ = "" THEN
- MakePath = szDir$
- ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
- MakePath = szDir$ + szFile$
- ELSE
- MakePath = szDir$ + "\" + szFile$
- END IF
- END FUNCTION
-
-