home *** CD-ROM | disk | FTP | other *** search
/ Amiga ACS 1998 #4 / amigaacscoverdisc1998-041998.iso / utilities / shareware / music / mrmidi / main.rexx < prev    next >
Encoding:
OS/2 REXX Batch file  |  1998-03-08  |  7.0 KB  |  172 lines

  1. /* Main.rexx */
  2.  
  3. options results; address MrMIDI
  4.  
  5. if ~show('L', 'rexxsupport.library') then do
  6.   if ~addlib('rexxsupport.library', 0, -30, 0) then do
  7.     say('rexxsupport.library is not available. Exiting...')
  8.     exit
  9.   end
  10. end
  11. if ~show('L', 'rexxutil.library') then do
  12.   if ~addlib('rexxutil.library', 0, -30, 0) then do
  13.     say('rexxutil.library is not available. Exiting...')
  14.     exit
  15.   end
  16. end
  17.  
  18. ASLFR_DrawersOnly    = 0x8008002f;    ASLFR_TitleText        = 0x80080001
  19. MUIA_Cycle_Active    = 0x80421788;    MUIA_Disabled        = 0x80423661
  20. MUIA_Dropable        = 0x8042fbce;    MUIA_InputMode        = 0x8042fb04
  21. MUIA_Listview_DragType    = 0x80425cd3;    MUIA_Listview_ClickColumn    = 0x8042d1b3
  22. MUIA_Listview_DoubleClick    = 0x80424635
  23. MUIA_Listview_MultiSelect    = 0x80427e08
  24. MUIA_List_AutoVisible    = 0x8042a445
  25. MUIA_List_DragSortable    = 0x80426099;    MUIA_List_Format    = 0x80423c0a
  26. MUIA_Menuitem_ShortCut    = 0x80422030;    MUIA_Menuitem_Title    = 0x804218be
  27. MUIA_Pressed        = 0x80423535;    MUIA_Selected        = 0x8042654b
  28. MUIA_ShowMe        = 0x80429ba8;    MUIA_Slider_Level    = 0x8042ae3a
  29. MUIA_Slider_Max        = 0x8042d78a;    MUIA_Slider_Min        = 0x8042e404
  30. MUIA_Window_Open    = 0x80428aa0;    MUIA_Window_Sleep    = 0x8042e7db
  31. MUIM_Application_AboutMUI    = 0x8042d21d
  32. MUIM_Application_OpenConfigWindow    = 0x804299ba
  33. MUIV_InputMode_RelVerify    = 1;    MUIV_Listview_DragType_Immediate    = 1
  34. MUIV_Listview_MultiSelect_Default    = 1
  35.  
  36. setvar cont 0; setvar stopped 0; setvar current_song ""; setvar current_time '00:00'
  37. setvar total_time '00:00:00'
  38.  
  39. window ID WIND1 TITLE '"MrMIDI"' COMMAND '"Clean"'
  40.  menu LABEL "Project"
  41.   item COMMAND '"Save 1"' ATTRS MUIA_Menuitem_Shortcut 'S' LABEL "Save Prefs"
  42.   item COMMAND '"method 'MUIM_Application_OpenConfigWindow'"',
  43.    ATTRS MUIA_Menuitem_Shortcut 'P' PORT MrMIDI LABEL "MUI Prefs..."
  44.   item ATTRS MUIA_Menuitem_Title '-1'
  45.   item COMMAND '"About"' ATTRS MUIA_Menuitem_Shortcut 'R' LABEL "About MrMIDI..."
  46.   item COMMAND '"method 'MUIM_Application_AboutMUI' 0"',
  47.    ATTRS MUIA_Menuitem_Shortcut 'M' PORT MrMIDI LABEL "About MUI..."
  48.   item ATTRS MUIA_Menuitem_Title '-1'
  49.   item COMMAND '"Clean"' ATTRS MUIA_Menuitem_Shortcut 'Q' LABEL "Quit"
  50.  endmenu
  51.  group ID MAIN FRAME
  52.   string ID FNAME CONTENT "No song is loaded."
  53.   text ID LCD LABEL "MrMPEG is also available from Aminet."
  54.   group HORIZ
  55.    label SINGLE "Song:"
  56.    text ID ACTIV LABEL "\033b\033r  0"
  57.    label SINGLE "/"
  58.    text ID MAX LABEL "\033b\033r  0"
  59.    label SINGLE "Time:"
  60.    text ID CURNT LABEL "\033b\033r00:00"
  61.    label SINGLE "/"
  62.    text ID TOTAL LABEL "\033b\033r00:00:00"
  63.   endgroup
  64.   group HORIZ
  65.    group
  66.     knob ID VOLM ATTRS MUIA_Slider_Max 500 MUIA_Slider_Min 0 MUIA_Slider_Level 300,
  67.      MUIA_InputMode MUIV_InputMode_RelVerify
  68.     label "Volume"
  69.    endgroup
  70.    group
  71.     group HORIZ
  72.      image ID PREV SPEC "4:MrMIDI:images/Previous.mf0" COMMAND '"Prev"'
  73.      image ID RWND SPEC "4:MrMIDI:images/Backward.mf0" ATTRS MUIA_Disabled 1
  74.      check ID PLAY SPEC "4:MrMIDI:images/Play.mf0" COMMAND '"Play"'
  75.      image ID FFWD SPEC "4:MrMIDI:images/Forward.mf0" ATTRS MUIA_Disabled 1
  76.      image ID NEXT SPEC "4:MrMIDI:images/Next.mf0" COMMAND '"Next"'
  77.      image ID STOP SPEC "4:MrMIDI:images/Stop.mf0" COMMAND '"Stop"'
  78.      image ID EJCT SPEC "4:MrMIDI:images/Eject.mf0" COMMAND '"Eject"'
  79.      check ID LIST SPEC "4:MrMIDI:images/SongList.mf0" ATTRS MUIA_Selected 1,
  80.       COMMAND '"window ID WIND2 ATTRS 'MUIA_Window_Open' %s"' PORT MrMIDI
  81.     endgroup
  82.     group HORIZ
  83.      check ID ADVC SPEC "4:MrMIDI:images/Advanced.mf0" ATTRS MUIA_Selected 1,
  84.       COMMAND '"group ID GRUP1 ATTRS 'MUIA_ShowMe' %s"' PORT MrMIDI
  85.      check ID MONO SPEC "4:MrMIDI:images/Expand.mf0" COMMAND '"Continue"'
  86.      check ID FILT SPEC "4:MrMIDI:images/Filter.mf0" ATTRS MUIA_Disabled 1
  87.      check ID RAND SPEC "4:MrMIDI:images/Random.mf0"
  88.      cycle ID REPT ATTRS MUIA_Cycle_Active 2 LABEL 'No Repeat,Repeat 1,Repeat All'
  89.     endgroup
  90.     text ID PROG LABEL "Stopped."
  91.    endgroup
  92.   endgroup
  93.  endgroup
  94.  group ID GRUP1 FRAME HORIZ
  95.   group
  96.    label DOUBLE "Freq. (Hz):"
  97.    label DOUBLE "Polyphony:"
  98.    label DOUBLE "Priority:"
  99.    label DOUBLE "Tone:"
  100.    label DOUBLE "Drum:"
  101.    label DOUBLE "Buffer (KS):"
  102.    label DOUBLE "Velocity Map:"
  103.    label DOUBLE "Volume Map:"
  104.   endgroup
  105.   group
  106.    cycle ID FREQ COMMAND '"Continue"' LABEL '4000,8000,11025,22050,28603,44100,48000,80000'
  107.    slider ID POLY ATTRS MUIA_Slider_Max 64 MUIA_Slider_Min 8 MUIA_Slider_Level 8
  108.    slider ID PRIO ATTRS MUIA_Slider_Max 30 MUIA_Slider_Min '-30' MUIA_Slider_Level 0
  109.    group HORIZ
  110.     check ID TOFI SPEC "4:MrMIDI:images/Filter.mf0"
  111.     string ID TOMP CONTENT 'Standard'
  112.    endgroup
  113.    group HORIZ
  114.     check ID DRFI SPEC "4:MrMIDI:images/Filter.mf0"
  115.     string ID DRMP CONTENT 'Standard'
  116.    endgroup
  117.    slider ID BUFF ATTRS MUIA_Slider_Max 128 MUIA_Slider_Min 1 MUIA_Slider_Level 16
  118.    cycle ID VEMP COMMAND '"Continue"' LABEL 'Linear,Quadratic,Exponential'
  119.    cycle ID VOMP COMMAND '"Continue"' LABEL 'Linear,Quadratic,Exponential'
  120.   endgroup
  121.  endgroup
  122. endwindow
  123. window ID WIND2 TITLE '"Play List"'
  124.  menu LABEL "Project"
  125.   item COMMAND '"Save 1"' ATTRS MUIA_Menuitem_Shortcut 'S' LABEL "Save Prefs"
  126.   item COMMAND '"method 'MUIM_Application_OpenConfigWindow'"',
  127.    ATTRS MUIA_Menuitem_Shortcut 'P' PORT MrMIDI LABEL "MUI Prefs..."
  128.   item ATTRS MUIA_Menuitem_Title '-1'
  129.   item COMMAND '"About"' ATTRS MUIA_Menuitem_Shortcut 'R' LABEL "About MrMIDI..."
  130.   item COMMAND '"method 'MUIM_Application_AboutMUI' 0"',
  131.    ATTRS MUIA_Menuitem_Shortcut 'M' PORT MrMIDI LABEL "About MUI..."
  132.   item ATTRS MUIA_Menuitem_Title '-1'
  133.   item COMMAND '"Clean"' ATTRS MUIA_Menuitem_Shortcut 'Q' LABEL "Quit"
  134.  endmenu
  135.  group HORIZ
  136.   group
  137.    label SINGLE "GMPlay Path:"
  138.    label SINGLE "MIDI Files Path:"
  139.   endgroup
  140.   group
  141.    popasl ID PATH SPEC "6:20" ATTRS ASLFR_DrawersOnly 1 ASLFR_TitleText '"Select path for GMPlay"'
  142.    popasl ID FPATH SPEC "6:20" ATTRS ASLFR_DrawersOnly 1 ASLFR_TitleText '"Select path for MIDI files"'
  143.   endgroup
  144.  endgroup
  145.  list ID SLIST TITLE '"Song Path,Time,Format,Tracks,DPQ"' ATTRS MUIA_Listview_DragType,
  146.   MUIV_Listview_DragType_Immediate MUIA_List_DragSortable 1 MUIA_Dropable 1,
  147.   MUIA_List_AutoVisible 1,
  148.   MUIA_List_Format '"P=\033r C=1 BAR,C=0 BAR,P=\033r BAR,P=\033r BAR,P=\033r"',
  149.   MUIA_Listview_MultiSelect MUIV_Listview_MultiSelect_Default PORT INLINE COMMAND '"
  150.   options results; address MrMIDI; check ID PLAY; if result = 0 then do;
  151.   setvar cont 1; check ID PLAY ATTRS 'MUIA_Selected' 1; end; else do;
  152.   call Continue.rexx; end"'
  153.  group HORIZ
  154.   button ID INST COMMAND '"Insert"' LABEL "Insert"
  155.   button ID DELE COMMAND '"Delete"' LABEL "Delete"
  156.   button ID CLR COMMAND '"Clear"' LABEL "Clear"
  157.   button ID SORT COMMAND '"Sort"' LABEL "Sort"
  158.  endgroup
  159.  group HORIZ
  160.   button ID LLOAD COMMAND '"ListLoad 1"' LABEL "Load"
  161.   button ID LSAVE COMMAND '"ListSave 1"' LABEL "Save"
  162.   button ID INCL COMMAND '"ListLoad 2"' LABEL "Include"
  163.  endgroup
  164. endwindow
  165. call Load
  166. call ListLoad(0)
  167. callhook ID SLIST APP COMMAND '"DropInsert %s"'
  168. callhook ID MAIN APP PORT INLINE COMMAND """options results; address MrMIDI;
  169.  call Clear; call DropInsert '%s'; check ID PLAY ATTRS "MUIA_Selected" 1"""
  170. callhook ID VOLM ATTRS MUIA_Pressed 0 COMMAND '"Continue"'
  171. exit
  172.