home *** CD-ROM | disk | FTP | other *** search
/ What the Doctor Required - The Freshest December / December.iso / drivers / ingame / sidewndr / midas.ms_ / midas.ms
Encoding:
Text File  |  1996-02-12  |  4.6 KB  |  188 lines

  1. '*****************************************************************************
  2. '*****************************************************************************
  3. ''DDReview% = DoMsgBox("", "DDREVIEW", MB_OK+MB_ICONHAND)
  4.  
  5. ''*********   Dialog ID's  ************************
  6. CONST NONX86          =  100
  7. CONST WARNING         =  200
  8. CONST NOHELP          =  300
  9. CONST NOTADMIN        =  400
  10. CONST DETECT          =  500
  11. CONST BADOS30         =  600
  12. CONST WELCOME         =  700
  13. CONST FOUNDSOFT       =  800
  14. CONST DESTPATH        =  900
  15. CONST BADPATH         = 1000
  16. CONST NOSPACEEXPRESS  = 1100
  17. CONST CDGETNAME       = 1200
  18. CONST CDCONFIRMINFO   = 1300
  19. CONST CDALREADYUSED   = 1400
  20. CONST CDBADFILE       = 1500
  21. CONST CDBADNAME       = 1600
  22. CONST BILLBOARD       = 1700
  23. CONST EXITQUIT        = 1800
  24. CONST EXITFAILURE     = 1900
  25. CONST ASKQUIT         = 2000
  26. CONST EXITSUCCESS     = 2100
  27. CONST QUITFILECOPY    = 2200
  28. CONST WRITEAUTOFIG    = 2300
  29.  
  30. GLOBAL COMDLL$
  31. GLOBAL SETUPINF$
  32. GLOBAL SRCDIR$
  33.  
  34. GLOBAL SHMSE$
  35. GLOBAL SHDST$
  36. GLOBAL WINDIR$
  37. GLOBAL WINSYSDIR$
  38. GLOBAL WINTYPE%
  39. GLOBAL OEMTYPE%
  40. GLOBAL DLG%
  41. GLOBAL HWIN%
  42. GLOBAL RetCode%
  43. GLOBAL szName$
  44. GLOBAL BADOPS%
  45. GLOBAL FOUNDOTHER%
  46.  
  47. DECLARE FUNCTION ExitWindows LIB "USER" (szBuf&, Buf%) AS INTEGER
  48. DECLARE FUNCTION WriteProfileString LIB "KERNEL" (szSec$, szLine$, szVal$)
  49. DECLARE FUNCTION SendMessage LIB "USER" (handle%,Num%,Mess%,lParam&) AS LONG
  50. DECLARE FUNCTION PostMessage LIB "USER" (handle%,Num%,Mess%,lParam&) AS INTEGER
  51. DECLARE FUNCTION ShowWindow LIB "USER" (handle%, flag%) AS INTEGER
  52. DECLARE FUNCTION SetMidasAutoBat LIB "mscuistf.dll" (szPath$) AS INTEGER
  53. DECLARE FUNCTION AutoFigWriteable LIB "mscuistf.dll" () AS INTEGER
  54.  
  55. '$INCLUDE 'setupapi.inc'
  56. '$INCLUDE 'msdetect.inc'
  57. '$INCLUDE 'common.inc'
  58.  
  59. INIT:
  60.  
  61.     COMDLL$ = "mscuistf.dll"
  62.     InitialIzation
  63.  
  64. WELCOME:
  65.     sz$ = UIStartDlg(COMDLL$, WELCOME, "FInfoDlgProc", 0, "")
  66.  
  67.     IF sz$ = "CONTINUE" THEN
  68.         UIPop 1
  69.     ELSEIF sz$ = "HELP" THEN
  70.         sz$ = UIStartDlg(COMDLL$, NOHELP, "FHelpDlgProc", 0, "")
  71.         UIPop 1
  72.         GOTO WELCOME
  73.     ELSE
  74.         ASKEXIT
  75.         GOTO WELCOME
  76.     ENDIF
  77.  
  78.     IF OEMTYPE% = 1 THEN
  79.         GOTO SETPATH
  80.     ENDIF
  81.  
  82.     Disincentive
  83.     FindOldSoftWare
  84.  
  85. SETPATH:
  86.  
  87.     GetPath
  88.  
  89. XSTALL:
  90.     IF WINTYPE% = 1 OR WINTYPE% = 4 THEN
  91.         ''      INPUT    USER
  92.         need& = 347957 + 422923
  93.     ELSEIF WINTYPE% = 3 THEN
  94.         ''      INPUT    USER
  95.         need& = 271697 + 345995
  96.     ENDIF
  97.     drive$ = MID$(SHMSE$, 1, 1)
  98.     IF need& > GetFreeSpaceForDrive(drive$) THEN
  99. NS:
  100.         sz$ = UIStartDlg(COMDLL$, NOSPACEEXPRESS, "FInfo0DlgProc", 0, "")
  101.         IF sz$ = "CONTINUE" THEN
  102.             UIPop 1
  103.             GOTO SETPATH
  104.         ELSE
  105.             GOTO NS
  106.         ENDIF
  107.     ENDIF
  108.  
  109. INSTALL:
  110.     SHDST$ = MakePath(SHMSE$, "JOYSTICK\SIDEWNDR")
  111.     
  112.     IF WINTYPE% = 3 THEN
  113.         'Win16
  114.         CreateDir SHMSE$, cmoNone
  115.         CreateDir SHDST$, cmoNone
  116.     ELSE
  117.         'Create long filename and return 8.3 in Win95/NT/Daytona
  118.         x%= NTCreateDir(SHMSE$)
  119.         SHMSE$ = GetSymbolValue("SetupString")
  120.         RemoveSymbol "SetupString"
  121.         x% = NTCreateDir(SHDST$)
  122.         SHDST$ = GetSymbolValue("SetupString")
  123.         RemoveSymbol "SetupString"
  124.     ENDIF
  125.  
  126.     FillCopyList
  127.     AddToBillBoardList COMDLL$, BILLBOARD, "BMDlgProc", 100
  128.     SetCopyGaugePosition 140, 120
  129.  
  130.     CopyFilesInCopyList
  131.  
  132.     Cursor% = ShowWaitCursor()
  133.     x% = GetBasicStr(8004)
  134.     szT$ = GetSymbolValue("SetupString")
  135.     x% = GetBasicStr(8007)
  136.     szRM$ = GetSymbolValue("SetupString")
  137.     x% = GetBasicStr(8008)
  138.     szRE$ = GetSymbolValue("SetupString")
  139.     x% = GetBasicStr(8012)
  140.     szHelp$ = GetSymbolValue("SetupString")
  141.     x% = GetBasicStr(14006)
  142.     szUninstall$ = GetSymbolValue("SetupString")
  143.  
  144.     IF WINTYPE% = 3 THEN
  145.         'Win16
  146.         FillIniFile
  147.     ELSE
  148.         'Win95/NT/Daytona
  149.         x% = NTSetRegistry(SHDST$, SendMessage(HWIN%, WM_LANG, 0, 0))
  150.     ENDIF
  151.  
  152.  
  153.     'Write PID to MSINPUT
  154.     szSer$ = GetSymbolValue("INSTALLEDSER")
  155.     szName$ = " ("+GetSymbolValue("INSTALLEDNAME")+")"
  156.     szIni$ = MakePath(SHMSE$,"MSINPUT.INI")
  157.     CreateIniKeyValue szIni$, "Joystick", "PID", szSer$+szName$, cmoOverwrite
  158.     
  159.     'Add ProgMan group and icon
  160.     CreateProgmanGroup szT$, "", cmoNone
  161.     ShowProgmanGroup szT$, 1, cmoNone
  162.     CreateProgmanItem szT$, szRM$, MakePath(SHDST$, szRE$), "", cmoOverwrite
  163.     CreateProgmanItem szT$, szHelp$, MakePath(SHDST$, "SIDEWNDR.HLP"), "", cmoOverwrite
  164.     CreateProgmanItem szT$, szUninstall$, MakePath(SHDST$, "uninstal.exe"), "", cmoOverwrite
  165.  
  166. AUTOBAT:
  167.     i% = SetMidasAutoBat(SHMSE$)
  168.     RestoreCursor Cursor%
  169.  
  170. QUIT:
  171.  
  172.     ON ERROR GOTO ERRQUIT
  173.  
  174.     QuitInstall
  175.  
  176.     END
  177.  
  178. ERRQUIT:
  179.  
  180.     x% = GetBasicStr(8003)
  181.     sz$ = GetSymbolValue("SetupString")
  182.     x% = GetBasicStr(8001)
  183.     sx$ = GetSymbolValue("SetupString")
  184.     i% = DoMsgBox(sz$, sx$, MB_OK+MB_TASKMODAL+MB_ICONHAND)
  185.     RemoveSymbol "SetupString"
  186.  
  187.     END
  188.