Category : Printer + Display Graphics
Archive   : REAL3D-2.ZIP
Filename : REAL.MST

 
Output of file : REAL.MST contained in archive : REAL3D-2.ZIP
'**************************************************************************
'* MSSetup Toolkit Sample 1
'**************************************************************************

'$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 APPHELP = 900
CONST BADPATH = 6400

''Bitmap ID
CONST LOGO = 1

GLOBAL DEST$ ''Default destination directory.

DECLARE SUB Install
DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING


INIT:
CUIDLL$ = "mscuistf.dll" ''Custom user interface dll
HELPPROC$ = "FHelpDlgProc" ''Help dialog procedure

SetBitmap CUIDLL$, LOGO
SetTitle "Real 3D Setup"

szInf$ = GetSymbolValue("STF_SRCINFPATH")
IF szInf$ = "" THEN
szInf$ = GetSymbolValue("STF_CWDDIR") + "REAL.INF"
END IF
ReadInfFile szInf$

OPTCUR$ = "1"
DEST$ = "C:\REAL"

'$IFDEF DEBUG
i% = SetSizeCheckMode(scmOnIgnore) '' could use scmOff; def = scmOnFatal
WinDrive$ = MID$(GetWindowsDir, 1, 1)
IF IsDriveValid(WinDrive$) = 0 THEN
i% = DoMsgBox("Windows drive ('"+WinDrive$+"') is not a valid drive.", "DEBUG", MB_TASKMODAL+MB_ICONEXCLAMATION+MB_OK)
GOTO QUIT
END IF
'$ENDIF ''DEBUG


WELCOME:
sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", APPHELP, HELPPROC$)
IF sz$ = "CONTINUE" THEN
UIPop 1
ELSE
GOSUB ASKQUIT
GOTO WELCOME
END IF


GETPATH:
SetSymbolValue "EditTextIn", DEST$
SetSymbolValue "EditFocus", "END"
GETPATHL1:
sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", APPHELP, HELPPROC$)
DEST$ = GetSymbolValue("EditTextOut")

IF sz$ = "CONTINUE" THEN
IF IsDirWritable(DEST$) = 0 THEN
GOSUB BADPATH
GOTO GETPATHL1
END IF
UIPop 1
ELSEIF sz$ = "REACTIVATE" THEN
GOTO GETPATHL1
ELSEIF sz$ = "BACK" THEN
UIPop 1
GOTO GETPATH
ELSE
GOSUB ASKQUIT
GOTO GETPATH
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
QUITL1:
sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
IF sz$ = "REACTIVATE" THEN
GOTO QUITL1
END IF
UIPop 1

END

ERRQUIT:
i% = DoMsgBox("Setup sources were corrupted!", "Setup Message", 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
SrcDir$ = GetSymbolValue("STF_SRCDIR")
CreateDir DEST$, cmoNone

CreateDir DEST$ + "\PROJECTS", cmoNone
CreateDir DEST$ + "\OBJECTS", cmoNone
CreateDir DEST$ + "\ENV", cmoNone
CreateDir DEST$ + "\MACROS", cmoNone
CreateDir DEST$ + "\IMAGES", cmoNone
CreateDir DEST$ + "\MATPREV", cmoNone
CreateDir DEST$ + "\TEXTURES", cmoNone
CreateDir DEST$ + "\BUMPMAPS", cmoNone
CreateDir DEST$ + "\BUMPMAPS\WAVESEQ", cmoNone
CreateDir DEST$ + "\MATERIAL", cmoNone
CreateDir DEST$ + "\ANIM", cmoNone
CreateDir DEST$ + "\COLORS", cmoNone
CreateDir DEST$ + "\RPL", cmoNone
CreateDir DEST$ + "\TUBEFONT", cmoNone
CreateDir DEST$ + "\REALFONT", cmoNone
CreateDir DEST$ + "\EXAMPLES", cmoNone
CreateDir DEST$ + "\EXAMPLES\ANIM", cmoNone
CreateDir DEST$ + "\EXAMPLES\BOOLEAN", cmoNone
CreateDir DEST$ + "\EXAMPLES\FREEFORM", cmoNone
CreateDir DEST$ + "\DELTA", cmoNone

AddSectionFilesToCopyList "Executables", SrcDir$, DEST$
CopyFilesInCopyList

i% = DoMsgBox("Please insert Real 3D Disk 3 in drive", "Change Disk", MB_TASKMODAL+MB_ICONEXCLAMATION+MB_OK)
AddSectionFilesToCopyList "Exec2", SrcDir$, DEST$
AddSectionFilesToCopyList "Macros", SrcDir$, DEST$ + "\macros"
AddSectionFilesToCopyList "Rpl", SrcDir$, DEST$ + "\rpl"
AddSectionFilesToCopyList "Sys", SrcDir$, DEST$ + "\rpl\sys"
AddSectionFilesToCopyList "Textures", SrcDir$, DEST$ + "\textures"
AddSectionFilesToCopyList "Bumpmaps", SrcDir$, DEST$ + "\bumpmaps"
AddSectionFilesToCopyList "Waveseq", SrcDir$, DEST$ + "\bumpmaps\waveseq"
AddSectionFilesToCopyList "Objects", SrcDir$, DEST$ + "\objects"
AddSectionFilesToCopyList "MatPrev", SrcDir$, DEST$ + "\matprev"
AddSectionFilesToCopyList "Projects", SrcDir$, DEST$ + "\projects"
AddSectionFilesToCopyList "Tubefont", SrcDir$, DEST$ + "\tubefont"
AddSectionFilesToCopyList "Startup", SrcDir$, DEST$
AddSectionFilesToCopyList "Boolean", SrcDir$, DEST$ + "\examples\boolean"
AddSectionFilesToCopyList "Freeform", SrcDir$, DEST$ + "\examples\freeform"
' AddSectionFilesToCopyList "Animexmp", SrcDir$, DEST$ + "\examples\animatio"
' AddSectionFilesToCopyList "Images", SrcDir$, DEST$ + "\images"
CopyFilesInCopyList

i% = DoMsgBox("Please insert Real 3D Disk 4 in drive", "Change Disk", MB_TASKMODAL+MB_ICONEXCLAMATION+MB_OK)
AddSectionFilesToCopyList "Help", SrcDir$, DEST$
AddSectionFilesToCopyList "Realfont", SrcDir$, DEST$ + "\realfont"
AddSectionFilesToCopyList "Delta", SrcDir$, DEST$ + "\delta"
AddSectionFilesToCopyList "Anim", SrcDir$, DEST$ + "\examples\anim"

CopyFilesInCopyList

i% = DoMsgBox("Please insert Real 3D Disk 5 in drive", "Change Disk", MB_TASKMODAL+MB_ICONEXCLAMATION+MB_OK)
AddSectionFilesToCopyList "Images", SrcDir$, DEST$ + "\images"
CopyFilesInCopyList

ini$ = MakePath(DEST$, "REAL.INI")
ini$ = MakePath(GetWindowsDir, "REAL.INI")
CreateIniKeyValue ini$, "Paths", "Projects", DEST$ + "\PROJECTS", cmoOverwrite
CreateIniKeyValue ini$, "Paths", "Objects", DEST$ + "\OBJECTS", cmoOverwrite
CreateIniKeyValue ini$, "Paths", "Environment", DEST$ + "\ENV", cmoOverwrite
CreateIniKeyValue ini$, "Paths", "Macros", DEST$ + "\MACROS", cmoOverwrite
CreateIniKeyValue ini$, "Paths", "Images", DEST$ + "\IMAGES", cmoOverwrite
CreateIniKeyValue ini$, "Paths", "Textures", DEST$ + "\TEXTURES", cmoOverwrite
CreateIniKeyValue ini$, "Paths", "Materials", DEST$ + "\MATERIAL", cmoOverwrite
CreateIniKeyValue ini$, "Paths", "Animations", DEST$ + "\ANIM", cmoOverwrite
CreateIniKeyValue ini$, "Paths", "Colors", DEST$ + "\COLORS", cmoOverwrite
CreateIniKeyValue ini$, "Paths", "Rpl", DEST$ + "\RPL", cmoOverwrite

CreateIniKeyValue ini$, "Paths", "RplPaths", DEST$ + "\RPL;" + DEST$ + "\MACROS", cmoOverwrite
CreateIniKeyValue ini$, "Paths", "TexturesPaths", DEST$ + "\TEXTURES;" + DEST$ + "\BUMPMAPS;" + DEST$ + "\MATPREV", cmoOverwrite

CreateIniKeyValue ini$, "Fonts", "Normal", "-17,0,0,0,400,0,0,0,0,3,2,1,34,Arial", cmoNone
CreateIniKeyValue ini$, "Fonts", "Italic", "-17,0,0,0,400,255,0,0,0,3,2,1,34,Arial", cmoNone
CreateIniKeyValue ini$, "Fonts", "Bold", "-17,0,0,0,700,0,0,0,0,3,2,1,34,Arial", cmoNone
CreateIniKeyValue ini$, "Fonts", "BoldItalic", "-17,0,0,0,700,255,0,0,0,3,2,1,34,Arial", cmoNone

CreateProgmanGroup "Real 3D Demo", "", cmoNone
ShowProgmanGroup "Real 3D Demo", 1, cmoNone
CreateProgmanItem "Real 3D Demo", "Real 3D", MakePath(DEST$,"REALDEMO.EXE") + " ", "", cmoOverwrite
CreateProgmanItem "Real 3D Demo", "Ballbear", MakePath(DEST$,"REALDEMO.EXE") + " projects\ballbear.prj", "", cmoOverwrite
CreateProgmanItem "Real 3D Demo", "Dice", MakePath(DEST$,"REALDEMO.EXE") + " projects\dice.prj", "", cmoOverwrite
CreateProgmanItem "Real 3D Demo", "Girl", MakePath(DEST$,"REALDEMO.EXE") + " projects\girl.prj", "", cmoOverwrite
CreateProgmanItem "Real 3D Demo", "Glass", MakePath(DEST$,"REALDEMO.EXE") + " projects\glass.prj", "", cmoOverwrite
CreateProgmanItem "Real 3D Demo", "Simple", MakePath(DEST$,"REALDEMO.EXE") + " projects\simple.prj", "", cmoOverwrite
CreateProgmanItem "Real 3D Demo", "Girl Obj", MakePath(DEST$,"REALDEMO.EXE") + " objects\girl.obj", "", cmoOverwrite
CreateProgmanItem "Real 3D Demo", "Head Obj", MakePath(DEST$,"REALDEMO.EXE") + " objects\head1.obj", "", cmoOverwrite
CreateProgmanItem "Real 3D Demo", "Head&Hat Obj", MakePath(DEST$,"REALDEMO.EXE") + " objects\head_hat.obj", "", cmoOverwrite
CreateProgmanItem "Real 3D Demo", "ShowImg", MakePath(DEST$,"SHOWIMG.EXE"), "", cmoOverwrite

CreateProgmanItem "Real 3D Demo", "Picture Show", MakePath(DEST$,"SHOWIMG.EXE") + " /d5 /s " + MakePath(DEST$, "images\*.bmp"), "", cmoOverwrite
CreateProgmanItem "Real 3D Demo", "Delta Play", MakePath(DEST$,"DELTA\DPLAY.EXE"), "", cmoOverwrite
CreateProgmanItem "Real 3D Demo", "Walk Delta", MakePath(DEST$,"DELTA\DPLAY.EXE") + " " + MakePath(DEST$, "delta\walk2.dlt"), "", cmoOverwrite
CreateProgmanItem "Real 3D Demo", "Run Delta", MakePath(DEST$,"DELTA\DPLAY.EXE") + " " + MakePath(DEST$, "delta\run.dlt"), "", cmoOverwrite
CreateProgmanItem "Real 3D Demo", "ReadMe", "notepad "+MakePath(DEST$,"readme.txt"), "", 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


  3 Responses to “Category : Printer + Display Graphics
Archive   : REAL3D-2.ZIP
Filename : REAL.MST

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/