home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD1.iso / GFX / ADPro251-3.DMS / ADPro251-3.adf / FREDScripts.lha / FREDOperators / BroadcastLimit.fred < prev    next >
Encoding:
Text File  |  1994-01-31  |  3.4 KB  |  156 lines

  1. /*
  2. ** BroadcastLimit.fred
  3. **
  4. ** $VER: BroadcastLimit.fred 1.2.0 (23.10.93)
  5. **
  6. ** This program can be run from an InvokeADPro list to execute the
  7. ** Broadcast Limit operator on the current frame or to test how many pixels
  8. ** will be affected using the defined settings.
  9. **
  10. ** Clips Imported:
  11. **    FREDTestMode        -    ~0 if only testing images
  12. **                    0 if doing actual operation
  13. **    FREDBroadcastStandard    -    Broadcast television standard
  14. **    FREDBroadcastLimitType    -    Broadcast limit type
  15. **    FREDBroadcastComposLim    -    Composite limit
  16. **    FREDBroadcastChromaLim    -    Chroma limit
  17. **
  18. ** NOTE: Clip names are case sensitive.
  19. **
  20. ** This script requires FRED v1.4.0 (or higher) to run.  Also required is
  21. ** ADPro v2.5.0 (or higher).
  22. **
  23. ** Copyright © 1993 ASDG, Incorporated
  24. ** All Rights Reserved
  25. */
  26.  
  27.  
  28. ADDRESS "ADPro"
  29. OPTIONS RESULTS
  30.  
  31. PARSE ARG FrameNum FrameFName Length LoadFlag FirstCallSeq FirstCallCell
  32.  
  33. NL = '0A'X
  34. SQ = '27'X
  35. DQ = '22'X
  36. TRUE  = 1
  37. FALSE = 0
  38.  
  39.  
  40. /*
  41. ** Get the required clips.  Error if any are missing.
  42. */
  43.  
  44. TestMode = GETCLIP( "FREDTestMode" )
  45. IF (TestMode = "") THEN DO
  46.     ADPRO_TO_FRONT
  47.     OKAY1 "Required clip, FREDTestMode," || NL ||,
  48.         "is not specified."
  49.     SCREEN_TO_FRONT "FRED"
  50.     EXIT 10
  51. END
  52.  
  53. Standard = GETCLIP( "FREDBroadcastStandard" )
  54. IF (Standard = "") THEN DO
  55.     ADPRO_TO_FRONT
  56.     OKAY1 "Required clip, FREDStandard," || NL ||,
  57.             "is not specified."
  58.     SCREEN_TO_FRONT "FRED"
  59.     EXIT 10
  60. END
  61.  
  62. LimitType = GETCLIP( "FREDBroadcastLimitType" )
  63. IF (LimitType = "") THEN DO
  64.     ADPRO_TO_FRONT
  65.     OKAY1 "Required clip, FREDLimitType," || NL ||,
  66.         "is not specified."
  67.     SCREEN_TO_FRONT "FRED"
  68.     EXIT 10
  69. END
  70.  
  71. ComposLim = GETCLIP( "FREDBroadcastComposLim" )
  72. IF (ComposLim = "") THEN DO
  73.     ADPRO_TO_FRONT
  74.     OKAY1 "Required clip, FREDComposLim," || NL ||,
  75.         "is not specified."
  76.     SCREEN_TO_FRONT "FRED"
  77.     EXIT 10
  78. END
  79.  
  80. ChromaLim = GETCLIP( "FREDBroadcastChromaLim" )
  81. IF (ChromaLim = "") THEN DO
  82.     ADPRO_TO_FRONT
  83.     OKAY1 "Required clip, FREDChromaLim," || NL ||,
  84.         "is not specified."
  85.     SCREEN_TO_FRONT "FRED"
  86.     EXIT 10
  87. END
  88.  
  89.  
  90. /*
  91. ** See what type of data is loaded in ADPro/MorphPlus.
  92. */
  93.  
  94. CALL "FREDSCRIPTS:FREDFunctions/CheckForRawImageData" TRUE
  95. IF (RESULT ~= 0) THEN
  96.     EXIT 10
  97.  
  98.  
  99. /*
  100. ** Do the Broadcast Limit operation.  If we're only doing a test, display
  101. ** the results on the ADPro/MorphPlus screen.
  102. */
  103.  
  104. IF (TestMode = 0) THEN DO
  105.     OPERATOR "BROADCAST_LIMIT",
  106.         Standard,
  107.         LimitType,
  108.         "COMPOS_LIM" ComposLim,
  109.         "CHROMA_LIM" ChromaLim
  110.     IF (RC ~= 0) THEN DO
  111.         OKAY1 RC
  112.         Why = ADPRO_RESULT
  113.         ADPRO_TO_FRONT
  114.         OKAY1 "The operator BROADCAST_LIMIT" || NL ||,
  115.             "failed to execute." || NL ||,
  116.             Why || NL ||,
  117.             "Argument Information:" || NL ||,
  118.             "Standard = " || Standard || NL ||,
  119.             "LimitType = " || LimitType || NL ||,
  120.             "ComposLim = " || ComposLim || NL ||,
  121.             "ChromaLim = " || ChromaLim
  122.         SCREEN_TO_FRONT "FRED"
  123.         EXIT 10
  124.     END
  125. END
  126. ELSE DO
  127.     OPERATOR "BROADCAST_LIMIT",
  128.         Standard,
  129.         LimitType,
  130.         "COMPOS_LIM" ComposLim,
  131.         "CHROMA_LIM" ChromaLim,
  132.         "TEST"
  133.     Why = ADPRO_RESULT
  134.     IF (RC ~= 0) THEN DO
  135.         ADPRO_TO_FRONT
  136.         OKAY1 "The operator BROADCAST_LIMIT" || NL ||,
  137.             "failed to execute." || NL ||,
  138.             Why || NL ||,
  139.             "Argument Information:" || NL ||,
  140.             "Standard = " || Standard || NL ||,
  141.             "LimitType = " || LimitType || NL ||,
  142.             "ComposLim = " || ComposLim || NL ||,
  143.             "ChromaLim = " || ChromaLim
  144.         SCREEN_TO_FRONT "FRED"
  145.         EXIT 10
  146.     END
  147.  
  148.     ADPRO_TO_FRONT
  149.     OKAY1 "Frame# " || FrameNum || NL ||,
  150.         FrameFName || NL || NL ||,
  151.         Why || " Pixels Affected"
  152.     SCREEN_TO_FRONT "FRED"
  153. END
  154.  
  155. EXIT 0
  156.