home *** CD-ROM | disk | FTP | other *** search
Wrap
/* HiP-ARexx-Play C by Marcel Döring in 1995 <DonDoringo@GURU.rhein-main.de> */ IF ~SHOW('LIBRARIES','tritonrexx.library') THEN DO IF ~ADDLIB('tritonrexx.library',10,-30,0) THEN DO SAY 'No tritonrexx.library found !' SAY 'Available on Aminet !' EXIT(10) END END rtv=TritonRexxVersion() Say 'Tritonrexx.library v. 'rtv' found' IF ~SHOW('LIBRARIES','rexxtricks.library') THEN DO IF ~ADDLIB('rexxtricks.library',2,-30,0) THEN DO SAY 'No Rexxtricks.library found !' Say 'Available on Aminet !' EXIT(10) END END Say 'Rexxtricks.library found' IF ~SHOW('LIBRARIES','rexxsupport.library') THEN DO IF ~ADDLIB('rexxsupport.library',0,-30,0) THEN DO SAY 'No Rexxsupport.library available ' EXIT(10) END END Say 'Rexxsupport.library found' IF ~SHOW('LIBRARIES','rexxsyslib.library') THEN DO IF ~ADDLIB('rexxsyslib.library',0,-30,0) THEN DO SAY 'No Rexxsyslib.library available ' EXIT(10) END END kick = GETENV('Kickstart') vewb = GETENV('Workbench') lang = GETENV('Language') Hippo='Work:Hippoplayer/HiP' tv=TritonVersion() SIGNAL ON break_c SIGNAL ON failure SIGNAL ON halt SIGNAL ON ioerr SIGNAL ON syntax app = TR_CREATEAPP('TRCA_Name Emergency-Break', 'TRCA_LongName "Emergency-Break in scripts with errors"', 'TRCA_Info "Tries to shut everything down.."', 'TRCA_Version 1.1', 'TRCA_Release 1', 'TRCA_Date 2.11.95', 'TAG_END') IF app ~= '00000000'x THEN DO appname = 'HiP-ARexx-Play' applongname = 'HiP-ARexx-Play - C1995 by Marcel Döring' appinfo = 'ARexx-Player using Hippoplayer' appversion = '1.1' apprelease = '1' appdate = '7.11.1995' app = TR_CREATEAPP('TRCA_Name' '"'appname'"', 'TRCA_LongName' '"'applongname'"', 'TRCA_Info' '"'appinfo'"', 'TRCA_Version' '"'appversion'"', 'TRCA_Release' '"'apprelease'"', 'TRCA_Date' '"'appdate'"', 'TAG_END') windowtags = WindowID(1), WindowTitle('HiP-ARexx-Player'), BeginMenu("Project"), MenuItem("A_About",10), MenuItem("I_HiP-Infos",11) ItemBarlabel, MenuItem("S_HiP-Samples Window",8), MenuItem("Y_Iconify",14) ItemBarlabel, MenuItem("Q_Quit HiP & H.A.P.",12), BeginMenu('H.A.P. Control'), MenuItem('L_Load & Play',1), MenuItem('D_Add',7), MenuItem('P_Pause',2), MenuItem('>_Pattern >>',3), MenuItem('<_Pattern <<',4), MenuItem('Z_Zip',5), MenuItem('H_Hide',9), MenuItem('W_Samples Window',8), MenuItem('T_Status...',11), MenuItem('E_Eject',6), 'HorizGroupA', 'Space', 'VertGroupA', 'Space', Button("Start HiP !",13), Button("Load & Play",1), Button("Add",7), Button("Pause",2), Button("Pattern >>",3), Button("Pattern <<",4), Button("Zip",5), Button("Hide",9), Button("Samples Window",8), Button("Status...",11), Button("Eject",6), Button("Quit HiP & H.A.P.",12), Button("Iconify H.A.P.",14), Button("About...",10), 'Space', 'EndGroup', 'Space', 'EndGroup', 'EndProject' app = TR_CREATEAPP('TRCA_Name Button') IF app ~= '00000000'x THEN DO window = TR_OPENPROJECT(app,windowtags) IF window ~= '00000000'x THEN DO ende = 0 DO WHILE ende ~= 1 CALL TR_WAIT(app,'') /**** IS GOING TO BE IMPLEMENTED !***** IF ~ShowList('P','HIPPOPLAYER') THEN DO call notinit RETURN END ***************************************/ DO WHILE TR_HANDLEMSG(app,'event') IF event.trm_class = 'TRMS_ACTION' THEN DO SELECT WHEN event.trm_id = 1 THEN call playfile WHEN event.trm_id = 2 THEN call pause WHEN event.trm_id = 3 THEN call fwd WHEN event.trm_id = 4 THEN call rwd WHEN event.trm_id = 5 THEN call zip WHEN event.trm_id = 6 THEN call eject WHEN event.trm_id = 7 THEN call add WHEN event.trm_id = 8 THEN call sampwind WHEN event.trm_id = 9 THEN call hide WHEN event.trm_id = 10 THEN call about WHEN event.trm_id = 11 THEN call getinfos WHEN event.trm_id = 12 THEN call quit WHEN event.trm_id = 13 THEN call starthip WHEN event.trm_id = 14 THEN call iconify OTHERWISE NOP END END IF event.trm_class = 'TRMS_CLOSEWINDOW' THEN IF Iconified~=YO THEN ende = 1 ELSE CALL UnIconify END END CALL TR_CLOSEPROJECT(window) END CALL TR_DELETEAPP(app) EXIT END playfile: /* Load & Play a File */ mainwindow = '00000000'x taglist = LoadFile('HiP-ARexx Select a File...','Play that one','SYS:','') 'ASLFR_PubScreenName' mainwindow IF ASL_REQUESTFILE(mainwindow,'destvar',taglist) THEN DO DO i = 1 TO destvar.0 SAY destvar.i ADDRESS 'HIPPOPLAYER' PLAY destvar.i PROT=GETPROTECTION(destvar.i) RETURN END END RETURN FWD: ADDRESS 'HIPPOPLAYER' /* Pattern forward */ FFWD RETURN RWD: ADDRESS 'HIPPOPLAYER' /* Pattern rewind */ REW RETURN PAUSE: Dummy=No /* Dummy-Loop */ IF Dummy=No THEN DO If STAT=YO THEN DO ADDRESS 'HIPPOPLAYER' 'CONT' STAT=NO RETURN END ADDRESS 'HIPPOPLAYER' 'STOP' STAT=YO RETURN END Zip: Dummy2=No IF Dummy2=No THEN DO IF STAT2=YO THEN DO ADDRESS 'HIPPOPLAYER' 'ZIP 1' STAT2=NO RETURN END ADDRESS 'HIPPOPLAYER' 'ZIP 0' STAT2=YO RETURN END Eject: ADDRESS 'HIPPOPLAYER' 'EJECT' RETURN END Add: if ende ~= 1 THEN DO mainwindow = '00000000'x taglist = LoadFile('HiP-ARexx Add a File...','Please select...','SYS:','') 'ASLFR_PubScreenName' mainwindow IF ASL_REQUESTFILE(mainwindow,'destvar',taglist) THEN DO DO i = 1 TO destvar.0 SAY destvar.i ADDRESS 'HIPPOPLAYER' ADD destvar.i PROT=GETPROTECTION(destvar.i) RETURN END END RETURN Quit: ADDRESS 'HIPPOPLAYER' 'QUIT' CALL TR_DELETEAPP(app) EXIT sampwind: ADDRESS 'HIPPOPLAYER' Samples RETURN END hide: Dummy3=No IF Dummy3=No THEN DO IF STAT3=YO THEN DO ADDRESS 'HIPPOPLAYER' 'HIDE 1' STAT3=NO RETURN END ADDRESS 'HIPPOPLAYER' 'HIDE 0' STAT3=YO RETURN END EXIT about: CALL TR_AUTOREQUEST(app,window,PubScreenName('workbench'), BeginRequester('About HiP-ARexx-Play C by Marcel Döring','TRWP_CENTERDISPLAY'), 'VertGroupA', 'Space', 'HorizSeparator', 'Space', CenteredText3('---->-->-->> HiP-ARexx-Player <<--<--<----'), 'Space', CenteredText('Public Domain'), 'Space', CenteredText('Version:'appversion), 'Space', CenteredText('C by Marcel Döring `95'), 'Space', CenteredText('Contact me:'), 'Space', CenteredText('Bleifuss@XOX.commo.mcnet.de'), 'Space', 'HorizSeparator', 'Space', CenteredText('Call the XOX: ++49 (0)69/541681'), 'Space', 'HorizSeparator', 'Space', CenteredText3('Libraries:'), 'Space', CenteredText('Using Tritonrexx.library v.' rtv 'C by Jürgen Kohrmeyer.'), 'Space', CenteredText('Using Triton.library v.' tv 'C by Stefan Zeiger.'), 'Space', CenteredText('Using RexxTricks.library C by Jürgen Kohrmeyer.'), 'Space', 'HorizSeparator', 'Space', 'EndGroup', 'BeginRequesterGads', CenteredButtonRE('Okay',10000), 'EndRequester') CALL TR_AUTOREQUEST(app,window,PubScreenName('workbench'), BeginRequester('About TriTon','TRWP_CENTERDISPLAY'), 'VertGroupA', 'Space', 'HorizSeparator', 'Space', CenteredText3('About TriTon:'), 'Space', CenteredText('This application uses the Triton GUI creation system C by Stefan Zeiger'), 'Space', 'HorizSeparator', 'Space', CenteredText('**********************************************'), 'Space', 'Space', CenteredText('Triton'), 'Space', 'Space', CenteredText('An object oriented GUI creation system.'), 'Space', 'Space', CenteredText('Release 1.3'), 'Space', 'Space', CenteredText('(c) 1993-1995 Stefan Zeiger'), 'Space', 'Space', CenteredText('**********************************************'), 'Space', 'HorizSeparator', 'Space', 'EndGroup', 'BeginRequesterGads', CenteredButtonRE('Important',10000), 'EndRequester') RETURN NotInit: CALL TR_EASYREQUEST(app,'ATTENTION !'||'0a'x||'HippoPlayer is not running,'||'0a'x||'You can start it from HiP-ARexx-Play or directly, but'||'0a'x||'Don`t use HiP-ARexx-Play`s other functions without HiP running !','I`ll do that','TREZ_LockProject' C2D(window) 'TAG_END') RETURN END GetInfos: options results address 'HIPPOPLAYER' get play if result == 1 then do play = "HiP is playing" end else do play = "HiP is not playing" end get name NAME = "Loaded module:" result get fnam FNAM = "Full name of the loaded module:" result get type TYPE = "Type of the loaded module:" result get size SIZE = "Size of the loaded module:" result get comm COMM = "Filecomment for the loaded module:" result get curr CURR = "Number of the loaded module:" result get csng CSNG = "Current song:" result get nsng NSNG = "Number of songs:" result get cspo CSPO = "Current songposition:" result get mspo MSPO = "Maximum songposition:" result get cfil CFIL = "Chosen file number:" result get cnam CNAM = "Chosen file name:" result get nfil NFIL = "Files in list:" result PR0T = "Protection-bits:" PROT KIKK = "Kickstart-version:" KICK WBVE = "Workbench-version:" VEWB CITY = "System-language:" LANG CALL TR_AUTOREQUEST(app,window,PubScreenName('workbench'), BeginRequester('HiP-Status','TRWP_CENTERDISPLAY'), 'VertGroupA', 'Space', CenteredText3('HiP-Status'), 'Space', 'HorizSeparator', 'Space', CenteredText(PLAY), 'Space', CenteredText(NAME), 'Space', CenteredText(FNAM), 'Space', CenteredText(TYPE), 'Space', CenteredText(SIZE), 'Space', CenteredText(COMM), 'Space', CenteredText(PR0T), 'Space', CenteredText(CURR), 'Space', CenteredText(CSNG), 'Space', CenteredText(NSNG), 'Space', CenteredText(CSPO), 'Space', CenteredText(MSPO), 'Space', CenteredText(CFIL), 'Space', CenteredText(NFIL), 'Space', CenteredText(CNAM), 'Space', 'HorizSeparator', 'Space', CenteredText3('HiP-Status'), 'Space', 'EndGroup', 'BeginRequesterGads', CenteredButtonRE('Great!',10000), 'EndRequester') CALL TR_AUTOREQUEST(app,window,PubScreenName('workbench'), BeginRequester('Status','TRWP_CENTERDISPLAY'), 'VertGroupA', 'Space', CenteredText3('Status'), 'Space', 'HorizSeparator', 'Space', CenteredText(KIKK), 'Space', CenteredText(WBVE), 'Space', CenteredText(CITY), 'Space', 'HorizSeparator', 'Space', CenteredText3('Status'), 'Space', 'EndGroup', 'BeginRequesterGads', CenteredButtonRE('Okay',10000), 'EndRequester') DROP PLAY NAME FNAM TYPE SIZE COMM PR0T CURR CSNG NSNG CSPO MSPO CFIL NFIL CNAM KIKK WBVE CITY RETURN starthip: Say 'Hippopath is:' Hippo Say 'Trying to start HiP...' ADDRESS COMMAND Hippo RETURN END e-break: CALL TR_DELETEAPP(app) END EXIT(0) iconify: dummywindow = TR_OPENPROJECT(app,WindowID(1000) WindowTitle('H.A.P. C by Marcel Döring `95 iconified') PubScreenName('workbench') 'EndProject') IF dummywindow ~= '00000000'x THEN DO CALL TR_CLOSEPROJECT(window) Iconified=YO END ELSE CALL TR_EASYREQUEST(app,'ATTENTION !'||'0a'x||'Couldn`t iconify H.A.P. !'||'0a'x||'Version:'appversion,'_Oops','TREZ_Title "Error !"' 'TREZ_LockProject' C2D(window) 'TAG_END') RETURN uniconify: CALL TR_CLOSEPROJECT(dummywindow) dummywindow = '00000000'x window = TR_OPENPROJECT(app,windowtags) IF window = '00000000'x THEN quit('Error! Couldn`t open window !!',10) Iconified=NO RETURN /***************IS GOING TO BE IMPLEMENTED !******************************* openlocale: uselocale = TRUE IF ~SHOW('LIBRARIES','locale.library') THEN IF ~ADDLIB('locale.library',-10,-30,0) THEN uselocale = FALSE IF ~loadrexx(progdir,'HiP-ARexx-Play.strings','') THEN quit('Error reading file "HiP-ARexx-Play.strings"!'),10) IF uselocale THEN DO catalogfile = 'catalogs/deutsch/HAP.catalog' IF RIGHT(progdir,1) = ':' THEN catalog = OPENCATALOG(progdir||'catalogs/deutsch/HAP.catalog','deutsch',0) ELSE catalog = OPENCATALOG(progdir||'/catalogs/deutsch/HAP.catalog','deutsch',0) IF catalog = 0 THEN catalog = OPENCATALOG('HAP.catalog','deutsch',0) END RETURN ***************************************************************************/ break_c: failure: halt: ioerr: syntax: SAY '+++ Error!' rc 'in Line' sigl '-' ERRORTEXT(rc) Say 'Trying to close complete script...' SAY SOURCELINE(sigl) IF app ~= '00000000'x THEN CALL TR_DELETEAPP(app) EXIT(10)