home *** CD-ROM | disk | FTP | other *** search
/ Carousel / CAROUSEL.cdr / mactosh / hc / xcmd_get.sit / SetVolume.Pas < prev    next >
Pascal/Delphi Source File  |  1988-01-31  |  1KB  |  54 lines

  1. {$R-}
  2. {
  3.     SetVolume -- An HyperCard XCMD that will set the volume of the speaker.
  4.     
  5.         Written by Steven Kienle, CIS account number 72330,111
  6.     
  7.     SetVolume should be called in HyperCard as
  8.         SetVolume(<volume>)
  9.     Where <volume> is between 0 and 7.
  10.     
  11.     After compiling this program, link it with the SetVolume.Link, then use
  12.     ResEdit to move the XCMD resource to the appropriate stack.  Or use the
  13.     GetVolume/SetVolume stack's Install button.
  14.     
  15.     NOTE:  for the XCmdGlue.inc file to work with TML Pascal, a few 
  16.            modifications are required.
  17. }
  18.  
  19. {$S SetVolume }     { Segment name must be the same as the command name. }
  20.  
  21. UNIT DummyUnit;
  22.  
  23. INTERFACE
  24.  
  25. USES MacIntf, HyperXCmd;
  26.  
  27. PROCEDURE ENTRYPOINT(paramPtr: XCmdPtr);
  28.     
  29. IMPLEMENTATION
  30.  
  31. PROCEDURE SetVolume(paramPtr: XCmdPtr); FORWARD;
  32.  
  33.   PROCEDURE ENTRYPOINT(paramPtr: XCmdPtr);
  34.   BEGIN
  35.     SetVolume(paramPtr);
  36.   END;
  37.  
  38. PROCEDURE SetVolume(paramPtr: XCmdPtr);
  39.     VAR
  40.         newVolume : LongInt ;
  41.         pasStr : Str255 ;
  42.         tempStr : Str31 ;
  43.  
  44.     {$I XCmdGlue.inc }
  45.  
  46.     BEGIN
  47.         ZeroToPas(paramPtr^.params[1]^,pasStr) ;    { first param is Volume }
  48.         tempStr := pasStr ;
  49.         newVolume := StrToNum(tempStr) ;            { Convert it to a Number }
  50.         SetSoundVol (newVolume) ;                     { Set the Volume }
  51.     END;
  52.  
  53. END.
  54.