| 1 | /* Rexx - check if Timidity is used as the default
 | 
|---|
| 2 |    sequencer.
 | 
|---|
| 3 |    The WPS crashes when Timidity is used to play a Midi
 | 
|---|
| 4 |    song using the classes.
 | 
|---|
| 5 | 
 | 
|---|
| 6 |    (C) Chris Wohlgemuth 2003. This file is part of the
 | 
|---|
| 7 |        CW-Multimedia classes.
 | 
|---|
| 8 | 
 | 
|---|
| 9 |       http://www.os2world.com/cdwriting
 | 
|---|
| 10 | 
 | 
|---|
| 11 |    This skript is called by M_MMAudio::wpclsInitData()
 | 
|---|
| 12 | */
 | 
|---|
| 13 | 
 | 
|---|
| 14 | call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs'
 | 
|---|
| 15 | call SysLoadFuncs
 | 
|---|
| 16 | 
 | 
|---|
| 17 | rc=0
 | 
|---|
| 18 | 
 | 
|---|
| 19 | /* Get MMOS2 directory */
 | 
|---|
| 20 | mmos2Dir=STRIP(TRANSLATE(value("MMBASE",,"OS2ENVIRONMENT")," ",";"))
 | 
|---|
| 21 | if LEFT(mmos2Dir,1)='\' THEN
 | 
|---|
| 22 |         mmpm2Ini=mmos2Dir||'mmpm2.ini'
 | 
|---|
| 23 | else
 | 
|---|
| 24 |         mmpm2Ini=mmos2Dir||'\mmpm2.ini'
 | 
|---|
| 25 | 
 | 
|---|
| 26 | if STREAM(mmpm2ini, "C", "Query exists")='' THEN DO
 | 
|---|
| 27 |         /* MMPM2.INI not found */
 | 
|---|
| 28 |         exit "0"
 | 
|---|
| 29 | END
 | 
|---|
| 30 | 
 | 
|---|
| 31 | /* Read ini */
 | 
|---|
| 32 | a=0
 | 
|---|
| 33 | DO WHILE LINES(mmpm2ini)
 | 
|---|
| 34 |         a=a+1
 | 
|---|
| 35 |         mmini.a=STRIP(LINEIN(mmpm2ini))
 | 
|---|
| 36 | END
 | 
|---|
| 37 | mmini.0=a
 | 
|---|
| 38 | ret=STREAM(mmpm2ini, "C", "close")
 | 
|---|
| 39 | 
 | 
|---|
| 40 | /* Find [DEFAULTNAMES] section */
 | 
|---|
| 41 | DO a=1 to mmini.0
 | 
|---|
| 42 |         if ABBREV(STRIP(TRANSLATE(mmini.a)), "[DEFAULTNAMES]")=1 THEN DO
 | 
|---|
| 43 |                 rc=parseDefaultnames()
 | 
|---|
| 44 |                 LEAVE
 | 
|---|
| 45 |         END
 | 
|---|
| 46 | END
 | 
|---|
| 47 | SAY rc
 | 
|---|
| 48 | if rc=1 THEN return "1"
 | 
|---|
| 49 | return "0"
 | 
|---|
| 50 | EXIT
 | 
|---|
| 51 | 
 | 
|---|
| 52 | /**************************************/
 | 
|---|
| 53 | 
 | 
|---|
| 54 | parseDefaultnames:
 | 
|---|
| 55 | a=a+1
 | 
|---|
| 56 | DO WHILE LEFT(mmini.a,1)\='['
 | 
|---|
| 57 |         IF ABBREV(TRANSLATE(mmini.a),"SEQUENCER")=1 THEN DO
 | 
|---|
| 58 |                 thePos=POS("TIMIDITY",TRANSLATE(mmini.a))
 | 
|---|
| 59 |                 if thePos=0 then return 0
 | 
|---|
| 60 |                 return 1
 | 
|---|
| 61 |         END
 | 
|---|
| 62 |         a=a+1
 | 
|---|
| 63 | END
 | 
|---|
| 64 | return 0
 | 
|---|
| 65 | 
 | 
|---|
| 66 | 
 | 
|---|