home *** CD-ROM | disk | FTP | other *** search
- /* $Id: os2_install.cmd,v 1.14 1996/05/30 17:22:52 DANIEL Exp $ */
- /* OS/2 Scala MM100 Installer */
- PARSE ARG from .
-
- /*
- *****************************************************************************
- *
- * Only make changes in these lines and the ones with the directory lists...
- *
- *****************************************************************************
- */
- Name= 'MM100'
- Description= 'Scala MultiMedia MM100'
- Version= '1.00'
- VersionDate= '05/14/1996'
- Default= 'C:\Scala'
-
- /****************************************************************************/
- /* Do not touch... */
- i=0
- /****************************************************************************/
- /* Source----------------------------- Destination--------------*/
- i=i+1;CODE.i='SCALA\*.EXE \'
- i=i+1;CODE.i='SCALA\*.TXT \'
- i=i+1;CODE.i='SCALA\APPS\* APPS\'
- i=i+1;CODE.i='SCALA\CATALOGS\* CATALOGS\'
- i=i+1;CODE.i='SCALA\CLIPS\SCALA\* CLIPS\SCALA\'
- i=i+1;CODE.i='SCALA\CONFIG\* CONFIG\'
- i=i+1;CODE.i='SCALA\EX\* EX\'
- i=i+1;CODE.i='SCALA\FONTS\SAMERICA\* FONTS\SAMERICA\'
- i=i+1;CODE.i='SCALA\FONTS\SBETON\* FONTS\SBETON\'
- i=i+1;CODE.i='SCALA\FONTS\SCENTURY\* FONTS\SCENTURY\'
- i=i+1;CODE.i='SCALA\FONTS\SCOMPACT\* FONTS\SCOMPACT\'
- i=i+1;CODE.i='SCALA\FONTS\SDIDOT\* FONTS\SDIDOT\'
- i=i+1;CODE.i='SCALA\FONTS\SFRANKLN\* FONTS\SFRANKLN\'
- i=i+1;CODE.i='SCALA\FONTS\SFRUTIGR\* FONTS\SFRUTIGR\'
- i=i+1;CODE.i='SCALA\FONTS\SFUTURA\* FONTS\SFUTURA\'
- i=i+1;CODE.i='SCALA\FONTS\SGARAMND\* FONTS\SGARAMND\'
- i=i+1;CODE.i='SCALA\FONTS\SGILL\* FONTS\SGILL\'
- i=i+1;CODE.i='SCALA\FONTS\SGOUDY\* FONTS\SGOUDY\'
- i=i+1;CODE.i='SCALA\FONTS\SHELVETI\* FONTS\SHELVETI\'
- i=i+1;CODE.i='SCALA\FONTS\SNGOTHIC\* FONTS\SNGOTHIC\'
- i=i+1;CODE.i='SCALA\FONTS\SPOKABA1\* FONTS\SPOKABA1\'
- i=i+1;CODE.i='SCALA\FONTS\SPOKABA2\* FONTS\SPOKABA2\'
- i=i+1;CODE.i='SCALA\FONTS\SUNIVERS\* FONTS\SUNIVERS\'
- i=i+1;CODE.i='.EMPTYDIR MPEG\'
- i=i+1;CODE.i='.EMPTYDIR MUSIC\'
- i=i+1;CODE.i='.EMPTYDIR SOUNDS\'
- i=i+1;CODE.i='SCALA\POINTERS\* POINTERS\'
- i=i+1;CODE.i='SCALA\SYSTEM\* SYSTEM\'
- i=i+1;CODE.i='SCALA\SYSTEM\LOADERS\* SYSTEM\LOADERS\'
- i=i+1;CODE.i='SCALA\SYSTEM\VIDEO\* SYSTEM\VIDEO\'
- i=i+1;CODE.i='SCALA\WIPES\FADE.WIP WIPES\'
- i=i+1;CODE.i='SCALA\WIPES\PUSHES.WIP WIPES\'
- i=i+1;CODE.i='SCALA\WIPES\REVEALS.WIP WIPES\'
- i=i+1;CODE.i='SCALA\WIPES\WIPES.BMP WIPES\'
- i=i+1;CODE.i='SCALA\WIPES\ZOOMS.WIP WIPES\'
- /* Source----------------------------- Destination--------------*/
- /****************************************************************************/
- /* Do not touch... */
- CODE.0=i
- i=0
- /****************************************************************************/
- /* Source----------------------------- Destination--------------*/
- i=i+1;COMP.i='COMPACT\BACKGRND\* BACKGRND\'
- i=i+1;COMP.i='COMPACT\MUSIC\MIDI\* MUSIC\MIDI\'
- i=i+1;COMP.i='COMPACT\SCRIPTS\* SCRIPTS\'
- i=i+1;COMP.i='COMPACT\SCRIPTS\ARTWORK\FEATURES\* SCRIPTS\ARTWORK\FEATURES\'
- i=i+1;COMP.i='COMPACT\SCRIPTS\ARTWORK\SOUNDTST\* SCRIPTS\ARTWORK\SOUNDTST\'
- /* Source----------------------------- Destination--------------*/
- /****************************************************************************/
- /* Do not touch... */
- COMP.0=i
- i=0
- /****************************************************************************/
- /* Source----------------------------- Destination--------------*/
- i=i+1;TYPI.i='SCALA\WIPES\ALPHA1.WIP WIPES\'
- i=i+1;TYPI.i='SCALA\WIPES\PICTURES\ALPHA1\* WIPES\PICTURES\ALPHA1\'
- i=i+1;TYPI.i='SCALA\HELP\* HELP\'
- i=i+1;TYPI.i='SCALA\HELP\GRAPHICS\* HELP\GRAPHICS\'
- i=i+1;TYPI.i='SCALA\ANIMS\1* ANIMS\'
- i=i+1;TYPI.i='SCALA\BACKGRND\AQUAREL\1* BACKGRND\AQUAREL\'
- i=i+1;TYPI.i='SCALA\BACKGRND\BUILD\1* BACKGRND\BUILD\'
- i=i+1;TYPI.i='SCALA\BACKGRND\GRADIEN\1* BACKGRND\GRADIEN\'
- i=i+1;TYPI.i='SCALA\BACKGRND\NAIVE\1* BACKGRND\NAIVE\'
- i=i+1;TYPI.i='SCALA\BACKGRND\OFFICE\1* BACKGRND\OFFICE\'
- i=i+1;TYPI.i='SCALA\BACKGRND\PEOPLE\1* BACKGRND\PEOPLE\'
- i=i+1;TYPI.i='SCALA\BACKGRND\VOLUME1\* BACKGRND\VOLUME1\'
- i=i+1;TYPI.i='SCALA\BUTTONS\* BUTTONS\'
- i=i+1;TYPI.i='SCALA\BUTTONS\3D\* BUTTONS\3D\'
- i=i+1;TYPI.i='SCALA\BUTTONS\ARROWS\* BUTTONS\ARROWS\'
- i=i+1;TYPI.i='SCALA\BUTTONS\BACKDROP\* BUTTONS\BACKDROP\'
- i=i+1;TYPI.i='SCALA\BUTTONS\PRESETS\* BUTTONS\PRESETS\'
- i=i+1;TYPI.i='SCALA\BUTTONS\CIRCLES\* BUTTONS\CIRCLES\'
- i=i+1;TYPI.i='SCALA\BUTTONS\MISC\* BUTTONS\MISC\'
- i=i+1;TYPI.i='SCALA\BUTTONS\ROUND\* BUTTONS\ROUND\'
- i=i+1;TYPI.i='SCALA\BUTTONS\VCR\* BUTTONS\VCR\'
- i=i+1;TYPI.i='SCALA\CLIPS\ARROWS\* CLIPS\ARROWS\'
- i=i+1;TYPI.i='SCALA\CLIPS\BALLOONS\* CLIPS\BALLOONS\'
- i=i+1;TYPI.i='SCALA\CLIPS\BOXES\* CLIPS\BOXES\'
- i=i+1;TYPI.i='SCALA\CLIPS\BULLETS\* CLIPS\BULLETS\'
- i=i+1;TYPI.i='SCALA\CLIPS\DIVIDERS\* CLIPS\DIVIDERS\'
- i=i+1;TYPI.i='SCALA\CLIPS\DRAWINGS\* CLIPS\DRAWINGS\'
- i=i+1;TYPI.i='SCALA\CLIPS\FOOD\* CLIPS\FOOD\'
- i=i+1;TYPI.i='SCALA\CLIPS\MISC\* CLIPS\MISC\'
- i=i+1;TYPI.i='SCALA\CLIPS\OFFICE\* CLIPS\OFFICE\'
- i=i+1;TYPI.i='SCALA\CLIPS\PEOPLE\* CLIPS\PEOPLE\'
- i=i+1;TYPI.i='SCALA\CLIPS\SCALA\* CLIPS\SCALA\'
- i=i+1;TYPI.i='SCALA\CLIPS\WEATHER\* CLIPS\WEATHER\'
- i=i+1;TYPI.i='SCALA\MUSIC\MIDI\1* MUSIC\MIDI\'
- i=i+1;TYPI.i='SCALA\MUSIC\WAVE\1* MUSIC\WAVE\'
- i=i+1;TYPI.i='SCALA\PALETTES\* PALETTES\'
- i=i+1;TYPI.i='SCALA\PALETTES\VIDEO\* PALETTES\VIDEO\'
- i=i+1;TYPI.i='SCALA\POINTERS\3DPOINT\* POINTERS\3DPOINT\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\CALCUL.SCA SCRIPTS\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\FEATURES.SCA SCRIPTS\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\FONTBOOK.SCA SCRIPTS\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\KIMS.SCA SCRIPTS\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\MAIN.SCA SCRIPTS\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\POKABAL.SCA SCRIPTS\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\SCABACK.SCA SCRIPTS\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\SCALATOR.SCA SCRIPTS\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\SCAPRODS.SCA SCRIPTS\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\SCAQUIZ.SCA SCRIPTS\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\SCAWORLD.SCA SCRIPTS\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\SOUNDTST.SCA SCRIPTS\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\ARTWORK\CALCUL\* SCRIPTS\ARTWORK\CALCUL\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\ARTWORK\FEATURES\* SCRIPTS\ARTWORK\FEATURES\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\ARTWORK\FONTBOOK\* SCRIPTS\ARTWORK\FONTBOOK\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\ARTWORK\KIMS\* SCRIPTS\ARTWORK\KIMS\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\ARTWORK\MAIN\* SCRIPTS\ARTWORK\MAIN\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\ARTWORK\POKABAL\* SCRIPTS\ARTWORK\POKABAL\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\ARTWORK\SCALATOR\* SCRIPTS\ARTWORK\SCALATOR\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\ARTWORK\SCAPRODS\* SCRIPTS\ARTWORK\SCAPRODS\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\ARTWORK\SCAQUIZ\* SCRIPTS\ARTWORK\SCAQUIZ\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\ARTWORK\SCAWORLD\* SCRIPTS\ARTWORK\SCAWORLD\'
- i=i+1;TYPI.i='SCALA\SCRIPTS\ARTWORK\SOUNDTST\* SCRIPTS\ARTWORK\SOUNDTST\'
- i=i+1;TYPI.i='SCALA\SOUNDS\1* SOUNDS\'
- i=i+1;TYPI.i='SCALA\SOUNDS\SCAVOICE\* SOUNDS\SCAVOICE\'
- /* Source----------------------------- Destination--------------*/
- /****************************************************************************/
- /* Do not touch... */
- TYPI.0=i
- i=0
-
- /*
- *****************************************************************************
- *
- * The rest is not to be touched...
- *
- *****************************************************************************
- */
- /* Default language */
- LangDir='English'
-
- /* Directory scanning stuff... */
- CALL RxFuncAdd 'SysFileTree','RexxUtil','SysFileTree'
-
- IF from='?' THEN
- DO
- SAY 'OS/2 Scala Install'
- SAY
- SAY 'OS2_INSTALL [source path]'
- SAY
- SAY ' Source drive path is optional and defaults to the location of'
- SAY ' the install program.'
- EXIT
- END
-
- /* If the user did not give a FROM we generate it */
- IF LENGTH(from)<2 THEN
- DO
- PARSE SOURCE junk junk from .
- from=STRIP(from)
-
- /* Now, remove the file name */
- DO UNTIL RIGHT(from,1)='\'
- from=LEFT(from,LENGTH(from)-1)
- END
- from=LEFT(from,LENGTH(from)-1)
- IF RIGHT(from,1)=':' THEN
- DO
- from=from || '\'
- END
- END
-
- OldDIR=DIRECTORY()
- Source=DIRECTORY(from)
- junk=DIRECTORY(OldDIR)
-
- IF LENGTH(Source)<2 THEN
- DO
- SAY 'Could not find the directory' from
- EXIT
- END
-
- Title=LEFT(Description,80-LENGTH(Name VersionDate)-1,' ') ,
- || Name VersionDate
-
- Target=Default
- CALL DisplayTitle
- SAY 'Type new path name or EXIT to quit or <RETURN> to continue.'
- PARSE PULL line .
- IF TRANSLATE(line)='EXIT' THEN EXIT
- IF LENGTH(line)>1 THEN Target=line
-
- DO FOREVER
- CALL DisplayTitle
- SAY 'Checking target...'
-
- junk=TRANSLATE(Target,' ','\')
- DO i=1 TO WORDS(junk)
- IF LENGTH(WORD(junk,i))>8 THEN
- DO
- SAY
- SAY 'Path name elements must be no greater than 8 characters'
- junk=''
- LEAVE
- END
- END
-
- IF junk\='' THEN
- DO
- test=DIRECTORY(Target)
- junk=DIRECTORY(OldDIR)
-
- IF LENGTH(test)<2 THEN
- DO
- SAY
- SAY 'Target directory does not exist.'
- junk=CHAROUT(,'Do you wish to create it? (Y/N) Y' || '08'x)
- PARSE PULL line .
- IF LENGTH(line)<1 THEN line='Y'
- line=TRANSLATE(LEFT(line,1))
- IF line='Y' THEN
- DO
- CALL MakePath Target
- test=DIRECTORY(Target)
- junk=DIRECTORY(OldDIR)
- IF LENGTH(test)<2 THEN
- DO
- SAY
- SAY 'Directory could not be created.'
- END
- ELSE
- DO
- LEAVE
- END
- END
- END
- ELSE
- DO
- SAY
- SAY 'Target directory already exists.'
- junk=CHAROUT(,'Do you wish to use it? (Y/N) Y' || '08'x)
- PARSE PULL line .
- IF LENGTH(line)<1 THEN line='Y'
- line=TRANSLATE(LEFT(line,1))
- IF line='Y' THEN
- DO
- LEAVE
- END
- END
- END
-
- SAY
- SAY 'Type new path name or EXIT to quit or <RETURN> to continue.'
- PARSE PULL line .
- IF TRANSLATE(line)='EXIT' THEN EXIT
- IF LENGTH(line)>1 THEN Target=line
- END
-
- /* Now, select a language */
- Lang=Source
- IF RIGHT(Lang,1)\='\' THEN Lang=Lang || '\'
- Lang=Lang || 'INSTALL\'
- rc=SysFileTree(Lang'*',langs,'DO')
-
- DO FOREVER
- CALL DisplayTitle
- SAY 'Select the language to install:'
- SAY
- SAY ' 0) English <DEFAULT>'
- DO i=1 TO langs.0
- Lang=TRANSLATE(langs.i,' ','\')
- Lang=WORD(Lang,WORDS(Lang))
- langs.i=TRANSLATE(LEFT(Lang,1)) ,
- || TRANSLATE(SUBSTR(Lang,2),XRANGE('a','z'),XRANGE('A','Z'))
- SAY ' 'RIGHT(i,2)')' langs.i
- END
- SAY
- junk=CHAROUT(,'Enter your selection: 0' || '08'x)
- PARSE PULL line .
- IF LENGTH(line)<1 THEN line=0
- IF (line<=langs.0) & (line>=0) THEN LEAVE
- END
-
- IF line>0 THEN
- DO
- LangDir=langs.line
- END
-
- /* Select Compact or Typical install... */
- DO FOREVER
- CALL DisplayTitle
- SAY 'Please select install type:'
- SAY
- SAY ' 1) Compact install (about 15 MB) <DEFAULT>'
- SAY ' 2) Typical install (about 80 MB)'
- SAY ' 3) Full install (about 380 MB)'
- SAY
- junk=CHAROUT(,'Install type: 1' || '08'x)
- PARSE PULL line .
- IF (line>=1) & (line<=3) THEN LEAVE
- END
- InstallType=line
-
- Target=DIRECTORY(Target)
- junk=DIRECTORY(OldDIR)
-
- /* Now start the real work... */
- CALL DisplayTitle
-
- IF (InstallType<=2) THEN
- DO i=1 TO CODE.0
- PARSE VAR CODE.i input output .
- IF RIGHT(output,1)\='\' THEN
- DO
- SAY 'Error in line' i 'of the CODE description.'
- SAY 'Destination is not a directory.'
- SAY CODE.i
- EXIT
- END
- junk=DoCopy(input,output)
- END
-
- /* Do the language (English will be a no-op)... */
- junk=DoCopy('INSTALL\'LangDir'\CATALOGS\*','CATALOGS\')
- junk=DoCopy('INSTALL\'LangDir'\CONFIG\*','CONFIG\')
-
- /* Compact install */
- IF InstallType=1 THEN
- DO i=1 TO COMP.0
- PARSE VAR COMP.i input output .
- IF RIGHT(output,1)\='\' THEN
- DO
- SAY 'Error in line' i 'of the COMP description.'
- SAY 'Destination is not a directory.'
- SAY COMP.i
- EXIT
- END
- junk=DoCopy(input,output)
- END
-
- /* Typical install */
- IF InstallType=2 THEN
- DO i=1 TO TYPI.0
- PARSE VAR TYPI.i input output .
- IF RIGHT(output,1)\='\' THEN
- DO
- SAY 'Error in line' i 'of the TYPI description.'
- SAY 'Destination is not a directory.'
- SAY TYPI.i
- EXIT
- END
- junk=DoCopy(input,output)
- END
-
-
- /* Full install */
- IF InstallType=3 THEN
- DO
- CopyFrom=From
- IF RIGHT(CopyFrom,1)\='\' THEN CopyFrom=CopyFrom || '\'
- CopyFrom=From || 'SCALA'
- SAY 'Installing everything (this will take a while)...'
- '@xcopy /S 'CopyFrom' 'Target' >nul'
- end
-
- SAY 'Now creating OS/2 folder and icons...'
- CALL MakeIcons Target Name
- SAY
- SAY 'Installation complete.'
- SAY
- SAY 'While it is not required that you shutdown before you use Scala,'
- SAY 'you may wish to do so to insure that OS/2 fully saves the changes'
- SAY 'made to your desktop.'
-
- EXIT
-
- /* Simple title display routine... Used all over the place... */
- DisplayTitle: PROCEDURE EXPOSE Title Source Target LangDir
- '@CLS'
- SAY
- SAY Title
- SAY
- SAY 'Installing from:' Source
- SAY
- SAY 'Installing to: ' Target
- SAY
- SAY 'Language: ' LangDir
- SAY
- RETURN 0
-
- DoCopy: PROCEDURE EXPOSE Target Source
- input=ARG(1)
- output=ARG(2)
-
- /* Now start the real work for this description line */
- CopyTo=Target
- IF RIGHT(CopyTo,1)\='\' THEN CopyTo=CopyTo || '\'
- IF output\='\' THEN CopyTo=CopyTo || output
-
- CopyFrom=Source
- IF RIGHT(CopyFrom,1)\='\' THEN CopyFrom=CopyFrom || '\'
- IF input\='\' THEN CopyFrom=CopyFrom || input
-
- /* Now start the real work... */
- junk=CHAROUT(,LEFT('Copying to: ' CopyTo,79) || COPIES('08'x,79))
- CALL MakePath CopyTo
-
- rc=SysFileTree(CopyFrom,'files','FO')
- DO j=1 TO files.0
- file=TRANSLATE(files.j,' ','\'); file=WORD(file,WORDS(file))
- junk=CHAROUT(,LEFT('Copying to file:' CopyTo || file,79) || COPIES('08'x,79))
- '@Copy >NUL: 2>NUL: "'files.j'" "'CopyTo || file'"'
- IF RC\=0 THEN
- DO
- SAY
- SAY 'There was a failure during the copy.'
- SAY 'Install aborted.'
- EXIT
- END
- END
- junk=CHAROUT(,COPIES(' ',79) || COPIES('08'x,79))
- RETURN 0
-
- /* Simple multi-segment path create... */
- MakePath: PROCEDURE
- PARSE ARG Path .
-
- Dirs=TRANSLATE(Path," ","\")
- IF LEFT(Path,1)='\' THEN Path='\'
- ELSE Path=''
-
- DO i=1 TO WORDS(Dirs)
- Path=Path || WORD(Dirs,i)
- '@MKDIR >NUL: 2>NUL:' Path
- Path=Path || '\'
- END
- RETURN 0
-
- /* The fancy Folder/Icon generator */
- MakeIcons: PROCEDURE
- PARSE ARG Dir Name .
-
- /* Functions we need from RexxUtil */
- CALL RxFuncAdd 'SysPutEA','RexxUtil','SysPutEA'
- CALL RxFuncAdd 'SysSaveObject','RexxUtil','SysSaveObject'
- CALL RxFuncAdd 'SysCreateObject','RexxUtil','SysCreateObject'
- CALL RxFuncAdd 'SysSetObjectData','RexxUtil','SysSetObjectData'
-
- /* Set a more useful LONGNAME for where our files are... */
- Longname='Scala' || '0A'x || Name 'Files'
- AppName='Scala' || '0A'x || Name
- FolderName='Scala'
- DiagName='Scala' || '0A'x || 'Diagnostics'
- FolderID='<SCALA_'Name'_FOLDER>'
- EA='FDFF'x || D2C(LENGTH(Longname)) || '00'x || Longname
- junk=SysPutEA(Dir,'.LONGNAME',EA)
-
- Folder= 'OBJECTID='FolderID';' ,
- || 'OPEN=DEFAULT;' ,
- || 'CONCURRENTVIEW=NO;' ,
- || 'ALWAYSSORT=YES;' ,
- || 'ICONVIEWPOS=10,70,35,22;'
-
- /* First, create the Scala folder on the desktop and open it */
- junk=SysCreateObject('WPFolder',FolderName,'<WP_DESKTOP>',Folder,'REPLACE')
-
- /* This is the image data for the Scala application icons */
- Icon='424128000000780000000000000043491A00000010001000E00100000C00000020'x || ,
- '00400001000100000000FFFFFF43491A00000010001000E00200000C0000002000'x || ,
- '200001000400000000000080008000008080800000800080808000C0C0C0808080'x || ,
- '0000FF00FF0000FFFFFF0000FF00FFFFFF00FFFFFF424128000000F00000000000'x || ,
- '000043491A00000008000800E00400000C0000001000200001000100000000FFFF'x || ,
- 'FF43491A00000008000800600500000C0000001000100001000400000000800000'x || ,
- '008000808000000080800080008080808080CCCCCCFF000000FF00FFFF000000FF'x || ,
- 'FF00FF00FFFFFFFFFF424128000000680100000004000343491A00000014001400'x || ,
- 'E00500000C0000002800500001000100000000FFFFFF43491A0000001400140060'x || ,
- '0800000C0000002800280001000400000000800000008000808000000080800080'x || ,
- '008080808080CCCCCCFF000000FF00FFFF000000FFFF00FF00FFFFFFFFFF424128'x || ,
- '000000000000000004000343491A0000000A000A00800B00000C00000014002800'x || ,
- '01000100000000FFFFFF43491A0000000A000A00200C00000C0000001400140001'x || ,
- '000400000000800000008000808000000080800080008080808080CCCCCCFF0000'x || ,
- '00FF00FFFF000000FFFF00FF00FFFFFFFFFF000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '0000000000000000000070808080808080808080808080808080F8888888888888'x || ,
- '88888888888888888878888808080808080808080808080880F888800000000000'x || ,
- '000000000000008878889999999999999999999999990880F88899999999999999'x || ,
- '9999999999008878889999999999999999999999990880F8889999FFF999999999'x || ,
- '9999999900887888999FFFFF99999999999999990880F888999FFFFF9999999999'x || ,
- '99999900887888999FFFFF99999999999999990880F8889999FFF9999999999999'x || ,
- '999900887888999999999FFF9999999999990880F88899999999FFFFF999999999'x || ,
- '990088788899999999FFFFFF99999999990880F88899999999FFFFFFF999999999'x || ,
- '00887888999999999FFFFFFF999999990880F8889999999999FFFFFFF999999900'x || ,
- '88788899999999999FFFFFFF9999990880F888999999999999FFFFFFF999990088'x || ,
- '78889999999999999FFFFFFF99990880F88899999999999999FFFFFFF999008878'x || ,
- '88999999999999999FFFFFFF990880F8889999999999999999FFFFFF9900887888'x || ,
- '99999999999999999FFFFF990880F888999999999999999999FFF9990088788899'x || ,
- '99999999999999999999990880F888999999999999999999999999888878888888'x || ,
- '888888888888888888888880F88888888888888888888888888888887888888888'x || ,
- '8888888888888888888880F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000077777777777777777770'x || ,
- '00000000000777CCCCCCCCCCCC0777CCFCCCCCCCCC0777CFFFCCCCCCCC0777CCFC'x || ,
- 'CCCCCCCC0777CCCCFFCCCCCC0777CCCCFFFCCCCC0777CCCCCFFFCCCC0777CCCCCC'x || ,
- 'FFFCCC0777CCCCCCCFFFCC0777CCCCCCCCFFFC0777CCCCCCCCCFCC0777CCCCCCCC'x || ,
- 'CCCC77777777777777777777777777777777770000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000FFFFFFFFFF000000FFFFFFFFFF000000FFFFFFFFFF000000'x || ,
- 'FFFFFFFFFF000000F00000000F000000F00000000F000000F00000000F000000F0'x || ,
- '0000000F000000F00000000F000000F00000000F000000F00000000F000000F000'x || ,
- '00000F000000F00000000F000000F00000000F000000F00000000F000000F00000'x || ,
- '000F000000F00000000F000000F00000000F000000F00000000F000000F0000000'x || ,
- '0F000000F00000000F000000F00000000F000000F00000000F000000F00000000F'x || ,
- '000000F00000000F000000F00000000F000000F00000000F000000F00000000F00'x || ,
- '0000F00000000F000000F00000000F000000F00000000F000000F00000000F0000'x || ,
- '00F00000000F000000F00000000F000000F00000000F000000F00000000F000000'x || ,
- 'FFFFFFFFFF000000FFFFFFFFFF000000FFFFFFFFFF000000FFFFFFFFFF00000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000807070707070707070707070707070700000'x || ,
- '0000F7777777777777777777777777777777000000008777770707070707070707'x || ,
- '070707077000000000F7777000000000000000000000000077000000008777CCCC'x || ,
- 'CCCCCCCCCCCCCCCCCCCC077000000000F777CCCCCCCCCCCCCCCCCCCCCCCC007700'x || ,
- '0000008777CCCCCCCCCCCCCCCCCCCCCCCC077000000000F777CCCCFFFCCCCCCCCC'x || ,
- 'CCCCCCCC0077000000008777CCCFFFFFCCCCCCCCCCCCCCCC077000000000F777CC'x || ,
- 'CFFFFFCCCCCCCCCCCCCCCC0077000000008777CCCFFFFFCCCCCCCCCCCCCCCC0770'x || ,
- '00000000F777CCCCFFFCCCCCCCCCCCCCCCCC0077000000008777CCCCCCCCCFFFCC'x || ,
- 'CCCCCCCCCC077000000000F777CCCCCCCCFFFFFCCCCCCCCCCC0077000000008777'x || ,
- 'CCCCCCCCFFFFFFCCCCCCCCCC077000000000F777CCCCCCCCFFFFFFFCCCCCCCCC00'x || ,
- '77000000008777CCCCCCCCCFFFFFFFCCCCCCCC077000000000F777CCCCCCCCCCFF'x || ,
- 'FFFFFCCCCCCC0077000000008777CCCCCCCCCCCFFFFFFFCCCCCC077000000000F7'x || ,
- '77CCCCCCCCCCCCFFFFFFFCCCCC0077000000008777CCCCCCCCCCCCCFFFFFFFCCCC'x || ,
- '077000000000F777CCCCCCCCCCCCCCFFFFFFFCCC0077000000008777CCCCCCCCCC'x || ,
- 'CCCCCFFFFFFFCC077000000000F777CCCCCCCCCCCCCCCCFFFFFFCC007700000000'x || ,
- '8777CCCCCCCCCCCCCCCCCFFFFFCC077000000000F777CCCCCCCCCCCCCCCCCCFFFC'x || ,
- 'CC0077000000008777CCCCCCCCCCCCCCCCCCCCCCCC077000000000F777CCCCCCCC'x || ,
- 'CCCCCCCCCCCCCCCC77770000000087777777777777777777777777777770000000'x || ,
- '00F777777777777777777777777777777700000000877777777777777777777777'x || ,
- '7777777000000000F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000000000000000000000000000'x || ,
- '000000000000000000000000000000000000000000FFFFF000FFFFF000C0003000'x || ,
- 'C0003000C0003000C0003000C0003000C0003000C0003000C0003000C0003000C0'x || ,
- '003000C0003000C0003000C0003000C0003000C0003000C0003000FFFFF000FFFF'x || ,
- 'F00000000000000000000000000000000000000000000000000000777777777777'x || ,
- '77770000000077700000000000070000000077CCCCCCCCCCCC070000000077CCFC'x || ,
- 'CCCCCCCC070000000077CFFFCCCCCCCC070000000077CCFCCCCCCCCC0700000000'x || ,
- '77CCCCFFCCCCCC070000000077CCCCFFFCCCCC070000000077CCCCCFFFCCCC0700'x || ,
- '00000077CCCCCCFFFCCC070000000077CCCCCCCFFFCC070000000077CCCCCCCCFF'x || ,
- 'FC070000000077CCCCCCCCCFCC070000000077CCCCCCCCCCCC7700000000777777'x || ,
- '777777777700000000777777777777777700000000000000000000000000000000'x || ,
- '0000000000000000000000'x
-
- DOS_settings= 'SET DOS_AUTOEXEC=;' ,
- || 'SET DOS_BACKGROUND_EXECUTION=0;' ,
- || 'SET DOS_BREAK=0;' ,
- || 'SET DOS_FCBS=16;' ,
- || 'SET DOS_FCBS_KEEP=8;' ,
- || 'SET DOS_FILES=40;' ,
- || 'SET DOS_HIGH=0;' ,
- || 'SET DOS_RMSIZE=640;' ,
- || 'SET DOS_UMB=1;' ,
- || 'SET DPMI_DOS_API=ENABLED;' ,
- || 'SET DPMI_MEMORY_LIMIT=16;' ,
- || 'SET HW_NOSOUND=0;' ,
- || 'SET HW_ROM_TO_RAM=1;' ,
- || 'SET HW_TIMER=1;' ,
- || 'SET IDLE_SECONDS=0;' ,
- || 'SET IDLE_SENSITIVITY=75;' ,
- || 'SET INT_DURING_IO=1;' ,
- || 'SET KBD_ALTHOME_BYPASS=1;' ,
- || 'SET KBD_BUFFER_EXTEND=0;' ,
- || 'SET KBD_CTRL_BYPASS=NONE;' ,
- || 'SET KBD_RATE_LOCK=1;' ,
- || 'SET SESSION_PRIORITY=31;' ,
- || 'SET VIDEO_8514A_XGA_IOTRAP=0;' ,
- || 'SET VIDEO_FASTPASTE=1;' ,
- || 'SET VIDEO_ONDEMAND_MEMORY=1;' ,
- || 'SET VIDEO_RETRACE_EMULATION=0;' ,
- || 'SET VIDEO_ROM_EMULATION=1;' ,
- || 'SET VIDEO_SWITCH_NOTIFICATION=0;'
-
- Common_setup= 'PROGTYPE=VDM;' ,
- || 'CONCURRENTVIEW=NO;' ,
- || 'MINWIN=DESKTOP;'
-
- /* Create the program object */
- Prog= 'EXENAME=' || Dir || '\MM.EXE;' ,
- || 'STARTUPDIR=' || Dir || ';' ,
- || 'ICONFILE=' || Dir || '\MM.ICO;' ,
- || 'OBJECTID=<SCALA_'Name'>;' ,
- || DOS_settings ,
- || Common_setup
-
- /* Write an icon image file to use... */
- junk=CHAROUT(Dir || '\' || 'MM.ICO',Icon)
- junk=STREAM(Dir || '\' || 'MM.ICO','C','CLOSE')
-
- /* Create... */
- junk=SysCreateObject('WPProgram',AppName,FolderID,Prog,'REPLACE')
-
- /* Create the DIAG program object */
- DIAG= 'EXENAME=' || Dir || '\DIAG.EXE;' ,
- || 'STARTUPDIR=' || Dir || ';' ,
- || 'ICONFILE=' || Dir || '\DIAG.ICO;' ,
- || 'OBJECTID=<SCALA_DIAG>;' ,
- || Common_setup ,
- || DOS_settings
-
- /* Write an icon image file to use... */
- junk=CHAROUT(Dir || '\' || 'DIAG.ICO',Icon)
- junk=STREAM(Dir || '\' || 'DIAG.ICO','C','CLOSE')
-
- /* Create... */
- junk=SysCreateObject('WPProgram',DiagName,FolderID,DIAG,'REPLACE')
-
- /* Finally, create a shadow to the place where the files are */
- /* We need to first set some options on the real directory... */
- MM_Files= 'NORENAME=YES;' ,
- || 'ALWAYSSORT=YES;'
- junk=SysSetObjectData(Dir,MM_Files)
-
- /* and now for the shadow... */
- Shadow='SHADOWID=' || Dir || ';' || MM_Files
- junk=SysCreateObject('WPShadow',Longname,FolderID,Shadow,'REPLACE')
-
- /* And, just so we know things are saved, we ask the folder to save... */
- junk=SysSaveObject(FolderID,'Synchronous')
-
- RETURN 0
-